Создание базы данных для магазина (“Торговая точка”, “Служащие”, “Ассортимент”), страница 4

FROM assort INNER JOIN points;

   ON  Assort.имя_товара = Points.имя_товара ;

                  INNER JOIN sluzh;

   ON  Points.отдел = Sluzh.отдел;

where points.Имя_товара=form1.pageframe1.page9.combo1.value

Рис.20. Результат работы запроса #9

Запрос #10

Найти руководителей служащих, работающих в отделе, в котором объем продажи данного (выбор) товара максимален.

Рис. 21. Вкладка для реализации запроса #10

Текст запроса:

SELECT DISTINCT sluzh.Начальник, sluzh.Отдел, points.Об_продаж;

FROM assort INNER JOIN points;

   ON  Assort.имя_товара = Points.имя_товара ;

                  INNER JOIN sluzh;

   ON  Points.отдел = Sluzh.отдел;

where sluzh.Начальник#"          " AND;

      points.Имя_товара=form1.pageframe1.page10.combo1.value and;

      points.Об_продаж=(;

      SELECT MAX(points.Об_продаж);

      FROM assort INNER JOIN points;

         ON  Assort.имя_товара = Points.имя_товара ;

                  INNER JOIN sluzh;

         ON  Points.отдел = Sluzh.отдел;

      where points.Имя_товара=form1.pageframe1.page10.combo1.value)

Рис.22. Результат работы запроса #10

Запрос #11

Найти товары, поставляемые фирмой ББ (выбор из меню любого названия) отделам третьего (выбор) этажа.

Рис. 23. Вкладка для реализации запроса #11

Текст запроса:

SELECT DISTINCT assort.Имя_товара,assort.Поставщик,points.Этаж;

FROM assort INNER JOIN points;

   ON  Assort.имя_товара = Points.имя_товара;

                  INNER JOIN sluzh;

   ON  Points.отдел = Sluzh.отдел;

where assort.Поставщик=form1.pageframe1.page11.combo1.value and;

        points.Этаж=EVALUATE(form1.pageframe1.page11.combo2.value)

Рис.24. Результат работы запроса #11

Запрос #12

Определить, все ли товары вида АА (выбор из меню любого наименования) поставляет фирма ББ (выбор из меню любого названия).

Рис. 25. Вкладка для реализации запроса #12

Текст запроса:

form1.pageframe1.page12.label3.caption=""

SELECT DISTINCT assort.Имя_товара,assort.Поставщик,"Другой поставщик";

FROM assort INNER JOIN points;

   ON  Assort.имя_товара = Points.имя_товара;

                  INNER JOIN sluzh;

   ON  Points.отдел = Sluzh.отдел;

where assort.Имя_товара=form1.pageframe1.page12.combo1.value and;

        assort.Поставщик!=form1.pageframe1.page12.combo2.value

COUNT TO vvv

IF vvv=0

      form1.pageframe1.page12.label3.caption="Нет другого поставщика"

Endif

Рис.26. Результат работы запроса #12

Запрос #13

Для каждой фирмы выдать список поставляемых ею товаров, руководителей и служащих, которые продают этот товар, где, стоимость и т.д.

Рис. 27. Вкладка для реализации запроса #13

Текст запроса:

SELECT assort.Поставщик,assort.Имя_товара,;

sluzh.Фамилия,sluzh.Имя,sluzh.Отчество,sluzh.Отдел,assort.Цена;

FROM assort INNER JOIN points;

   ON  Assort.имя_товара = Points.имя_товара ;

                  INNER JOIN sluzh;

   ON  Points.отдел = Sluzh.отдел;

order BY 1

Рис.28. Результат работы запроса #11

Выводы:

В ходе данной расчетно-графической работы было проведено создание базы данных, аналогичной той, которая могла бы быть использована в реальной жизни. Для работы с таблицами создана форма с множеством элементов управления, построены всевозможные запросы к базе данных; закреплены знания по программированию в среде FoxPro, а также освоены новые возможности среды программирования Visual FoxPro, ранее не применявшиеся в лабораторных работах (функция Count, циклы for и while и прочие операторы).


Список литературы:

1. Мейер Д. Теория реляционных баз данных. – М.: Мир, 1987. – 215 с.

2. Бадиян, Менахен. Использование Visual FoxPro 6.0. – М.: Мир, 2000. – 421 с.

3. Каратигин, Тихонов, Тихонова. Visual FoxPro 6.0. – М.: Мир, 1999. – 231 с.