Создание базы данных «Фильмотека», страница 3

Далее по нажатии одной из этих кнопок меню вызывается ее процедура со вложенным в нее соответствующем SQL-запросом. Например для кнопки меню «Список фильмов» -«по году выпуска»:

SELECT * FROM films ORDER BY год_вып

3.2. «Таблицы»

Это режим просмотра и редактирования данных. Реализован данный пункт меню следующим образом. При нажатии на один из пунктов меню, командой «do form …» вызывается экранная форма вида:

Рис.19. Форма вызываема при нажатии «Таблицы» - «Фильмы».

Обработчик события нажатия кнопки «Добавить» выглядит так:

append in films

thisform.grid1.refresh

Обработчик события нажатия кнопки «Удалить» выглядит так:

set deleted on

thisform.grid1.refresh()

Элемент управления Grid отображает таблицу БД и позволяет непосредственное редактирование.

3.3.«Запросы»

Этот пункт меню открывает экранную форму демонстрации запросов. Реализован пункт меню при помощи стандартных элементов управления. Экранная форма «Запросы» имеет вид:

Рис.20. Форма вызываема при нажатии «Запросы».

3.4.   «О программе»

При вызове этого пункта меню вызывается простейшая экранная форма, в которой имеется информация об авторе.

Рис.21. Экранная форма «О программе»

4.  «Запросы»

4.1.   Запрос № 1

Найти самый дорогой фильм, фильм, наиболее популярный, самый старый по году выпуска и т.д.

самый дорогой

самые популярные

самый старый

Рис. 22. Результаты запроса №1. (самый дорогой)

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

Рис. 24. Результаты запроса №1. (самый старый)

4.2.   Запрос № 2

Для заданного жанра (ввод, выбор) определить все фильмы, чья стоимость меньше, чем заданный фильм (выбор) из заданной страны (выбор).

Рис. 25. Входные данные для запроса.

Рис. 26. Результаты запроса №2.

4.3.   Запрос № 3

Найти все фильмы со стоимостью в заданных пределах (выбор) по заданному году выпуска (выбор) для заданной страны (выбор).

Рис. 27. Входные данные для запроса.

Рис. 28. Результаты запроса №3.

4.4.   Запрос № 4

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

Рис. 29. Входные данные для запроса.

Low_end_film – Доля дешевых фильмов

High_end_film – Доля дорогих фильмов

Рис. 30. Результаты запроса №4.

4.5.   Запрос № 5

Найти страны, где показано наибольшее число фильмов заданного жанра.

Рис. 31. Результаты запроса №5.

4.6.   Запрос № 6

Найти всех актеров, каждый из которых либо мужчина, либо живет в Париже.

Рис. 32. Результаты запроса №6.

4.7.   Запрос № 7

Найти имена и адреса всех актрис, которые одновременно являются президентами киностудий или продюсерами, обладающими совокупным годовым доходом в размере свыше 100000$.

Рис. 33. Результаты запроса №7.

4.8.   Запрос № 8

Найти, кто из актеров-мужчин участвовал в съемках фильма «Терминатор» (или ввод наименования любого другого фильма).

Рис. 34. Входные данные для запроса.

Рис. 35. Результаты запроса №8.

4.9.   Запрос № 9

Для заданного актера (ввод актера) найти, в каких фильмах снимался, в 1995 году (ввод заданного года, любого).

Рис. 36. Входные данные для запроса.

Рис. 37. Результаты запроса №9.

4.10.  Запрос № 10

Найти, кто из руководителей индустрии кино обладает большим состоянием, чем актер Иванов (выбор, ввод).

Рис. 38. Входные данные для запроса.

Рис. 39. Результаты запроса №10.

4.11.  Запрос № 11

Найти имена тех президентов киностудий, кто одновременно является и актерами.

Рис. 40. Результаты запроса №11.

5.  Выводы

Поставленная задача выполнена, все работает, просматривается, редактируется и

удаляется. Фундамент в проектировании приложений на MS Visual FoxPro заложен.

Конечно, в процессе проектирования в данной среде разработки нельзя было не наткнуться на «глюки», которые Visual Fox Pro имеет предостаточно.

Так же доставило определенные неудобства, отсутствие возможности создавать формы ориентированные на реляционные БД, а точнее количество связных таблиц не может быть более 2.

Ну а вообще же, для написания простой БД, при минимальных затратах времени и средств, MS Visual Fox Pro подходит идеально, что в свою очередь должно заинтересовать потенциальных разработчиков БД.

6.  Литература

  1. http://www.firststeps.ru - сайт «Первые шаги». Раздел программирования Visual FoxPro.
  2. Базиян, Менахем и др., Использование Visual FoxPro 6., Специально издание.: ИД «Вильямс», 2003. – 928 с.