Запрос с вычисляемым полем К У Р С О В А Я Р А Б О Т А по дисциплине «ИНФОРМАТИКА» на тему проектирование реляционной базы данных «ВИДЕОПРОКАТ» средствами СУБД Access Выполнил: Проверил: к.т.н., доцент Фомина Е.Е. Тверь, 2012 Содержание 1. Задание на курсовую работу_ 3 2. Нормализация исходной таблицы_ 4 3.1. Создание таблиц_ 6 3.2. Связи между таблицами_ 8 3.3. Создание форм_ 9 3.4. Создание отчетов 9 3.5. Создание запросов 11 3.5.1. Запрос с условием_ 11 3.5.2. Запрос с параметром_ 12 3.5.5. Перекрестный запрос 14 3.5.6. Запрос с вычисляемым полем_ 15 3.6. Создание кнопочной формы_ 16 4. Результаты_ 18 Задание на курсовую работу 1. Привести исходную таблицу (табл.1) к третьей нормальной форме. 2. Создать в режиме конструктора таблицы, полученные путем нормализации исходной. Предусмотреть использование мастера подстановок. Для числовых полей наложить условие на значение, предусмотреть сообщение об ошибке; для текстовых полей установить оптимальную длину поля; для полей с датами, номерами телефонов установить маску ввода. 3. В каждой из таблиц определить ключевые поля. 4. В окне «Схема данных» установить связи. 5. Заполнить таблицы данными. Уметь выполнять фильтрацию и сортировку данных в таблицах. 6. Для каждой из таблиц создать экранную форму. На формах разместить кнопки удаления и добавления записи. По возможности добавить на форму вычисляемые поля. 7. Создать многотабличную форму. 8. В режиме конструктора создать запросы следующих типов: 8.1.1. Запрос для текстовых полей с точным и неточным совпадением, 8.1.2. Запрос для числовых полей со сложным условием отбора, 8.1.3. Запрос с параметром, 8.1.4. Перекрестный запрос, 8.1.5. Вычисляемое поле, 8.1.6. Запрос с группировкой записей, 8.1.7. Запросы-действия: 8.1.7.1. Запрос на обновление, 8.1.7.2. Запрос на удаление, 8.1.7.3. Запрос на добавление записей, 8.1.7.4. Запрос на создание таблицы. 9. Создать отчеты следующих видов: 9.1.1. Простой отчет с нумерацией записей и подсчетом их количества. 9.1.2. С подчиненным отчетом. 9.1.3. Отчет с группировкой и подведением итогов. 9.1.4. Создать макросы: 9.1.4.1. для поиска информации в базе данных, 9.1.4.2. для поиска и замены информации. Таблица 1. Исходные поля базы данных «Видеопрокат» Фильм | Режиссер | Год выпуска | Популярность | Тема | Цена | Длительность | Поставщик (адрес, №телефона, №счета, контактное лицо) | Исполнитель главной роли | Дата приобретения | Зритель (телефон, адрес, № паспорта, длительность проката) | Нормализация исходной таблицы В результате нормализации исходной табл. 1 был получен следующий проект базы данных (схема 1). Схема 1. Нормализованная база данных Создание базы данных в СУБД Access Создание таблиц 1. В окне СУБД Access выбирается объект Таблицы. 2. Нажимается кнопка Создать и выбирается режим Конструктор. 3. На экране появляется диалоговое окно создания таблицы, где в столбце Имя поля записываются имена полей создаваемой таблицы, в столбце Тип данных выбирается соответствующий тип данных, а на вкладке Общие определяются свойства поля. 4. В каждой таблице определяется ключ. Для этого выделяется поле или группа полей и на панели инструментов нажимается кнопка . 5. Примеры таблиц в режиме конструктора представлены на рис. 1 - 3.  Рис. 1. Таблица «Поставщик» Рис. 2. Таблица «Просмотр» Рис. 3. Таблица «Фильмы» 3.2. Связи между таблицами Для установления связей между таблицами используется схема данных (рис. 4). 1. На панели инструментов нажимается кнопка . 2. Вызывается контекстное меню и выбирается команда Добавить таблицу. 3. В диалогом окне выделяются имена таблиц и нажимается кнопка Добавить. 4. После отображения таблиц в окне Схемы данных уславливаются связи. Для этого выделяется поле одной из двух связываемых таблиц и, удерживая нажатой левую кнопку мыши, курсор перемещается к полю другой таблицы. 5. В диалоговом окне Изменение связей устанавливаются опции Обеспечение целостности данных, Каскадное обновление связанных полей, Каскадное обновление связанных полей.  Рис. 4. Схема данных Создание форм 1. В окне СУБД Access выбирается объект Формы. 2. Нажимается кнопка Создать и выбирается команда Мастер форм. 3. В появившемся диалоговом окне Создание форм выбирается имя таблицы, для которой создается форма. 4. Из раздела Доступные поля поля таблицы переносятся в раздел Выбранные поля нажатием кнопки . 5. Выбирается внешний вид и стиль формы. 6. Задается имя формы. 7. Созданную форму можно дорабатывать в режиме Конструктора. Для этого на панели инструментов нажимается кнопка . Примеры форм представлены на рис. 5 - 6.  Рис. 5. Форма для табл. «Поставки» Рис. 6. Форма для табл. «Поставщик» Создание отчетов 1. В окне СУБД Access выбирается объект Отчеты. 2. Нажимается кнопка Создать и выбирается команда Мастер отчетов. 3. В появившемся диалоговом окне Создание отчетов последовательновыбираются имена таблиц или запросов, на остове которых создается отчет. 4. Из раздела Доступные поля поля таблицы (запроса) переносятся в раздел Выбранные поля нажатием кнопки . 5. Выбирается внешний вид и стиль отчета. 6. Добавляются уровни группировки и итоги (если необходимо). 7. Задается имя отчета. 8. Созданный отчет (рис. 7 – 8) можно дорабатывать в режиме Конструктора. Для этого на панели инструментов нажимается кнопка .  Рис. 7. Отчет по таблице «Поставщик»  Рис. 8. Отчет по таблице «Фильмы» Создание запросов Запрос с условием 1. В окне СУБД Access выбирается объект Запросы. 2. Нажимается кнопка Создать и выбирается команда Конструктор. 3. В появившемся диалоговом окне Добавление таблиц выделяются имена таблиц, на остове которых создается запрос и нажимается кнопка Добавить. 4. В разделе Имя таблицы выбирается имя таблицы из которой будут браться данные для запроса. 5. В разделе Поле выбирается поле таблицы, данные которого должны быть отображены в запросе. 6. В разделе Условие отбора записывается условие, которое накладывается на поле (рис. 9). 7. Для просмотра результатов запроса на панели инструментов нажимается кнопка .  Рис. 9. Запрос с условием Запрос с параметром 1. В окне СУБД Access выбирается объект Запросы. 2. Нажимается кнопка Создать и выбирается команда Конструктор. 3. В появившемся диалоговом окне Добавление таблиц выделяются имена таблиц, на остове которых создается запрос и нажимается кнопка Добавить. 4. В разделе Имя таблицы выбирается имя таблицы из которой будут браться данные для запроса. 5. В разделе Поле выбирается поле таблицы, данные которого должны быть отображены в запросе. 6. В разделе Условие отбора в квадратных скобках записывается параметр запроса: [Введите «имя поля»] (рис. 10). 7. Для просмотра результатов запроса на панели инструментов нажимается кнопка . 8. В результате на экране появляется окно, в которое пользователь вводит значение параметра.  Рис. 10. Запрос с параметром Запрос с группировкой 1. В окне СУБД Access выбирается объект Запросы. 2. Нажимается кнопка Создать и выбирается команда Конструктор. 3. В появившемся диалоговом окне Добавление таблиц выделяются имена таблиц, на остове которых создается запрос и нажимается кнопка Добавить. 4. В разделе Имя таблицы выбирается имя таблицы из которой будут браться данные для запроса. 5. В разделе Поле выбирается поле таблицы, данные которого должны быть отображены в запросе. 6. На палении инструментов нажимается кнопка Групповые операции . 7. На экране появляется дополнительная строка . 8. В строке Групповые операции под полями по которым идет группировка данных выбирается операция Группировка, а под полями, по которым подводятся итоги, выбирается групповая операция (Sum, Count и др.) (рис. 11). 9. Для просмотра результатов запроса на панели инструментов нажимается кнопка .  Рис. 11. Запрос с группировкой Перекрестный запрос 1. В окне СУБД Access выбирается объект Запросы. 2. Нажимается кнопка Создать и выбирается команда Конструктор. 3. В появившемся диалоговом окне Добавление таблиц выделяются имена таблиц, на остове которых создается запрос и нажимается кнопка Добавить. 4. В главном меню выбирается пункт Запросы, команда Перекрестный. 5. На экране появляется дополнительные строки . 6. В разделе Имя таблицы выбирается имя таблицы, из которой будут браться данные для запроса. 7. В разделе Поле выбирается поле таблицы, данные которого должны быть отображены в запросе. 8. В строке Перекрестная таблица указывается, как будут расположены данные поля: по строкам, по столбам или являться значением. 9. В строке Групповая операция для заголовков строк и столбцов выбирается команда Группировка, а для полей-значений – групповая операция: max, sum и др. (рис. 12). 10. В запрос возможно добавление поля Итоговое значение, позволяющего подвести итоги по строке с данными. 11. Для просмотра результатов запроса на панели инструментов нажимается кнопка .  Рис. 12. Перекрестный запрос Запрос с вычисляемым полем 1. В окне СУБД Access выбирается объект Запросы. 2. Нажимается кнопка Создать и выбирается команда Конструктор. 3. В появившемся диалоговом окне Добавление таблиц выделяются имена таблиц, на остове которых создается запрос и нажимается кнопка Добавить. 4. В разделе Таблица выбирается имя таблицы, из которой будут браться данные для запроса. 5. В разделе Поле выбирается поле таблицы, данные которого должны быть отображены в запросе. 6. После добавления всех полей в новом столбце создается вычисляемое поле. Для этого пишется имя вычисляемого поля, ставится двоеточие, а затем записывается формула, в которой имена полей идут в квадратных скобках (рис. 13). 7. Для просмотра результатов запроса на панели инструментов нажимается кнопка .  Рис. 13. Перекрестный запрос Создание кнопочной формы Для удобного доступа к данным базы данных рекомендуется создавать многоуровневые кнопочные формы. В курсовой работе требовалось создать двухуровневую кнопочную форму следующего вида (рис. 14).   Рис. 14. Главная кнопочная форма 1. В режиме Конструктора создаются кнопочные формы второго уровня. 2. Подключается панель элементов нажатием кнопки . 3. Выделяется объект . Кнопка прорисовывается на форме. 4. Нажатием правой кнопки мыши вызывается контекстное меню, выбирается команда Свойства, на закладке События выбирается строка Нажатие кнопки и выбирается строка Макрос. 5. В появившемся окне Макрос в столбце Макрокоманда выбирается соответствующая макрокоманда: ОткрытьЗапрос, ОткрытьОтчет и др. 6. В Аргументы макрокоманды указывается имя открываемого объекта и режим просмотра. Результаты 1. В курсовой работе средствами СУБД Access была разработана база данных «Видеопрокат». 2. Созданы пять таблиц, между которыми в окне Схемы данных установлены связи. 3. Для каждой таблицы созданы формы для ввода и редактирования данных. 4. Созданы запросы следующих видов: с условием, перекрестный, с группировкой, с вычисляемым полем, с параметром. 5. Созданы отчеты. 6. Разработана двухуровневая кнопочная форма для удобства работы с базой данных. |