Формирование основной базы данных "Кондитерские изделия", страница 3

  temp_hran AS рекомендуемая_температура,;

  FLOOR(P3) AS срок_хранения_при_указанной_T;

 FROM (;

          SELECT *,srok_hran*(1-IIF(P2<0,0,P2)) AS P3 FROM (;

                    SELECT *,IIF(P1>1,1,P1) AS P2 FROM (;

                              SELECT *,(k-temp_hran)/30 AS P1 FROM izdeliya;

                    ) AS T1;

          ) AS T2;

 ) AS T3

Результат выполнения запроса:

Рис. 35. Результат выполнения запроса №10

Задание №11: Для каждого клиента составить список продукции, которая закупается, указать цену, кол-во, качество.

Вид меню:

Рис. 36. Меню запроса №11

Запрос:

SELECT izdeliya.name, prodazhi.kol, izdeliya.cena, prodazhi.kol*izdeliya.cena;

AS stoimost, date FROM prodazhi;

JOIN klient ON klient.id=prodazhi.izdelie;

JOIN izdeliya ON izdeliya.id=prodazhi.izdelie;

WHERE klient.name=kl

Результат выполнения запроса:

Рис. 37. Результат выполнения запроса №11

Задание №12: Для стоимости в заданных (ввод интервалов) пределах составить список товара, которые можно закупить, указав кол-во, качество.

Вид меню:

Рис. 38. Меню запроса №12

Запрос:

SELECT name, FLOOR(k/cena) AS kolichestvo FROM izdeliya

Результат выполнения запроса:

Рис. 39. Результат выполнения запроса №12

Задание №13: Для каждого вида кондитерского изделия указать сведения о нем (наименование, дата выпуска, место изготовления, цена, вес и т.п.);

Запрос:

SELECT *;

FROM kond!izdeliya

Результат выполнения запроса:

Рис. 40. Результат выполнения запроса №13

Задание №14: Для каждого вида товара указать сведения о поставщике (наименование, регулярность поставок, процент бракованной продукции и т.д.).

Запрос:

SELECT Izdeliya.name, Izdeliya.ves, Izdeliya.cena, Postavshik.name,;

  Postavshik.brak_percent AS процент_брака,;

  Postavshik.regular AS регулярность_поставок_дней;

 FROM ;

     kond!izdeliya ;

    INNER JOIN kond!postavshik ;

   ON  Postavshik.id = Izdeliya.postavshik

Результат выполнения запроса:

Рис. 41. Результат выполнения запроса №14

Задание №15: Для каждого вида товара выдать список, отсортированный: по дате выпуска, в алфавитном порядке, по весу, по стоимости.

Запрос:

по дате выпуска

SELECT Izdeliya.name, Izdeliya.proizvod, Izdeliya.ves, Izdeliya.cena,;

  Postavki.proizv_dt AS дата_выпуска;

 FROM ;

     kond!izdeliya ;

    INNER JOIN kond!postavki ;

   ON  Izdeliya.id = Postavki.izdelie;

 ORDER BY Postavki.proizv_dt

валфавитномпорядке

SELECT Izdeliya.name, Izdeliya.proizvod, Izdeliya.ves, Izdeliya.cena,;

  Postavki.proizv_dt AS дата_выпуска;

 FROM ;

     kond!izdeliya ;

    INNER JOIN kond!postavki ;

   ON  Izdeliya.id = Postavki.izdelie;

 ORDER BY Izdeliya.name

повесу

SELECT Izdeliya.name, Izdeliya.proizvod, Izdeliya.ves, Izdeliya.cena,;

  Postavki.proizv_dt AS дата_выпуска;

 FROM ;

     kond!izdeliya ;

    INNER JOIN kond!postavki ;

   ON  Izdeliya.id = Postavki.izdelie;

 ORDER BY Izdeliya.ves

постоимости

SELECT Izdeliya.name, Izdeliya.proizvod, Izdeliya.ves, Izdeliya.cena,;

  Postavki.proizv_dt AS дата_выпуска;

 FROM ;

     kond!izdeliya ;

    INNER JOIN kond!postavki ;

   ON  Izdeliya.id = Postavki.izdelie;

 ORDER BY Izdeliya.cena

Результат выполнения запроса:

Рис. 42. Результат выполнения запроса №15 (по дате выпуска)

Рис. 43. Результат выполнения запроса №15 (в алфавитном порядке)

Рис. 44. Результат выполнения запроса №15 (по весу)

Рис. 45. Результат выполнения запроса №15 (по стоимости)

Пример функциональности формы редактирования данных таблиц (рис.46).

Рис. 46. Форма редактирования таблицы кондитерских изделий

Вывод отчета с данными об изделиях (рис.47)

Рис.47. Отчет «Изделия»


  1. Выводы:

В ходе выполнения работы были получены навыки работы с проектами пакета Microsoft Visual FoxPro 9.0, закреплены знания, полученные в ходе выполнения лабораторных работ по дисциплине «Базы данных». В процессе создания БД были укреплены знания по следующим пунктам:

·  Создание удобного интерфейса, ускоряющего доступ к основных функциям базы данных.

·  Создание пользовательскихформ, позволяющих получать данные от пользователя, что приводит к возможности создания гибких запросов, результаты которых зависят от заданных пользователями условий.

·  Работа с внутренним языком программирования Visual FoxPro 9.0 — определение переменных, массивов, создание циклов и условий. Все эти возможности значительно увеличивают потенциал использования языка SQL.

·  Создание запросов к базе данных, включающих в себя: объединения таблиц, подзапросы, условия, группировку данных, сортировку данных, управление получателем результата.


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

Документация по Microsoft Visual FoxPro 9.0