Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Топ:
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов...
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Интересное:
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Влияние предпринимательской среды на эффективное функционирование предприятия: Предпринимательская среда – это совокупность внешних и внутренних факторов, оказывающих влияние на функционирование фирмы...
Дисциплины:
2020-05-07 | 225 |
5.00
из
|
Заказать работу |
|
|
Для построения запросов следует воспользоваться Конструктором запросов. Рассмотрим пример построения следующих запросов:
1. Просмотр авторов книги
2. Ввод нового автора и его книги
При выполнении первого запроса сначала создадим форму с полем для ввода исходных данных и кнопкой, нажатие на которую вызовет выполнение запроса.
Форма имеет вид, представленный на рисунке 7.
Рисунок 7. Структура формы для 1 запроса
Далее формируем сам запрос через режим Конструктора (рисунок 7).
Рисунок 8 – Конструкция запроса 1
Конструкция запроса должна содержать все используемые таблицы. Каждый столбец данных отвечает за необходимую по смыслу запроса информацию: 1 столбец (входная информация) – название книги, запрос получает эту информацию из поля «Название» формы «формаЗапроса1». Следующие два столба являются результатом запроса – это два информационных поля из таблицы «Авторы» - Фамилия и Имя. Кнопка на форме связывается с запросом и при нажатии на нее выполняется наш запрос. На рисунке 9 представлен результат работы Запроса 1.
а)
б)
Рисунок 9. Результат работы запроса1 а) Вид формы; б) Вид таблицы запроса
Не забудьте вставить в отчет вид SQL запроса. В нашем случае он выглядит следующим образом:
SELECT Книги.Название, Авторы.Фамилия, Авторы.Имя
FROM Книги INNER JOIN (Авторы INNER JOIN АвторКниги ON Авторы.КодАвтора = АвторКниги.КодАвтора) ON Книги.КодКниги = АвторКниги.КодКниги
GROUP BY Книги.Название, Авторы.Фамилия, Авторы.Имя
HAVING (((Книги.Название)=[Формы]![формаЗапроса1]![Название]));
Если первый запрос был посвящен просмотру БД по условию (поиск информации), то второй запрос – на добавление.
Снова создадим форму с 4 полями: Поле 1 – Фамилия автора, Поле 2 – Имя автора, Поле 3 - Дополнительное информационное поле, Поле 4 – Название книги. Также нам понадобятся два поля со списками для добавления Издательства и Раздела (рисунок 10).
|
Рис. 10. Макет Формы запроса на добавление
Для добавления новой книги с новым автором нам необходимо сделать три запроса на добавления: Запрос1 – добавить автора в таблицу «Авторы», Запрос2 – добавить название книги, а также издательство и раздел в таблицу «Книги», Запрос3 добавляет запись в таблицу-связку «АвторКниги». Рассмотрим случай, если автор один, в противном случае необходимо вызывать запрос несколько раз, используя условие окончания ввода авторов. Так как действий несколько, будем вызывать запросы по очереди, используя макросы, связанные в двумя кнопками: «Добавить» - выполнение первых двух запросов, «Сохранить» - выполнение третьего запроса и закрытие БД (сохранение внесенных изменений).
Рассмотрим структуру Запроса1 – добавление автора:
INSERT INTO Авторы (Фамилия, Имя, Примечание)
SELECT DISTINCT Формы!ФормаЗапроса2!Поле0 AS Фамилия, Формы!ФормаЗапроса2!Поле4 AS Имя, Формы!ФормаЗапроса2!Поле6 AS Примечание;
Данный запрос берет данные из полей формы (обратите внимание - обращаться надо к имени поля!!!) и формирует новую запись в таблице «Авторы» с соответствующими полями. На рис. 11 представлен запрос1 в формате конструктора.
Рис. 11 – Запрос1 в режиме конструктора
Аналогично строится запрос2 на добавление новой книги:
INSERT INTO Книги (Название, Раздел, Издательство)
SELECT DISTINCT Формы!ФормаЗапроса2!Поле8 AS Название, Формы!ФормаЗапроса2!ПолеСоСписком17 AS Раздел, Формы!ФормаЗапроса2!ПолеСоСписком21 AS Издательство;
Макрос1 будет связывать два запроса последовательно (рисунок 12).
Макрос2 будет содержать три команды – запуск запроса3 на добавление, закрытие всей БД, что приведет к сохранению изменений и закрытие самой формы запроса2 (рис. 13).
Запрос на добавление в таблицу-связку имеет следующую структуру:
|
INSERT INTO АвторКниги (КодКниги, КодАвтора)
SELECT Книги!КодКниги AS КодКниги, Авторы!КодАвтора AS КодАвтора
FROM Книги, Авторы
WHERE ((([Формы]![ФормаЗапроса2]![Поле0])=[Авторы]![Фамилия]) AND (([Формы]![ФормаЗапроса2]![Поле8])=[Книги]![Название]));
Рис. 12. Макрос1 в режиме конструктора
Рис. 13. Макрос2 в режиме конструктора
Как видно из текста SQL запроса добавление в таблицу АвторКниги происходит только при условии, что соответствующие данные есть как в таблице «Книги», так и в таблице «Авторы» (условие WHERE). В режиме конструктора Запрос представлен на рисунке 14.
Рис. 14 – Запрос3 в режиме конструктора
Мы рассмотрели запрос на добавление, в случае запроса на удаление необходимо перед выполнением запроса удалить связи между таблицами. Потом их восстановить (каскадно уже не получится, но связь по полю вернуть!!).
P.S. Написание запросов – задача творческая, имеет несколько вариантов исполнения, поэтому рекомендация – КОНСУЛЬТИРУЙТЕСЬ!!!
Защита практической работы
Содержание отчета
В отчете должны присутствовать следующие пункты:
1) Титульный лист
2) Задание
3) Структура БД
4) Примеры заполнения таблиц
5) Описание запросов на языке SQL.
6) Результаты работы запросов
Студент обязан предоставить отчет о проделанной работе преподавателю и защитить ее, выполнив дополнительные задания по теме занятия и ответив на вопросы.
Требования при подведении итогов текущей и промежуточной аттестаций
При сдаче работы в срок (не позднее последнего учебного дня в семестре), студент получает максимум 10 баллов. До дня проведения промежуточной аттестации студент имеет право защитить работу без баллов и получить допуск к зачету. Если работа не была защищена, студент не допускается до дифференциального зачета.
|
|
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!