Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Chast_6_BAZA_DANN_Kh.doc
Скачиваний:
2
Добавлен:
05.05.2019
Размер:
2.54 Mб
Скачать

6.5.4.2. Разработка и создание запросов в субд ms Access

Запросы на выборку

Создавать запрос лучше всего с помощью Конструктора. Для этого следует открыть основное меню MS Access, выбрать объект "Запрос" и щелкнуть кнопку "Конструктор" (рис.6.69).

Рис.6.69. Создание запроса с помощью "Конструктора"

Отдать команду "Запросы"–"Конструктор" из главного меню MS Access

В результате мы переходим в бланк запроса, в который необходимо добавить объект (объекты), из которого мы будем извлекать информацию (рис.6.70).

Рис.6.70. Добавление в бланк запроса таблицы, из которой будет извлекаться информация

Будем создавать запрос из таблицы "Сессия".

Выбрать в окне "Добавление таблицы" таблицу "Сессия" и щелкнуть кнопку

"Добавить", а затем кнопку "Закрыть".

В результате выполнения задания список полей таблицы "Сессия" добавится в бланк запроса (рис.6.71).

Рис.6.71. Бланк запроса со списком полей таблицы "Сессия"

Следующим этапом является добавление полей из списка полей таблицы "Сессия" в бланк запроса. Это можно производить тремя способами:

  • двойным щелчком мыши на нужном поле в списке;

  • перетаскиванием методом drag&drop соответствующего поля из списка в бланк запроса (рис.6.72);

  • открытия списка в строке "Поле" бланка запроса (рис.6.72).

Добавить поля "Семестр", "Факультет", Фамилия" и все предметы различными

способами в бланк запроса (рис.6.73).

Рис.6.72. Добавление поля в бланк запроса методом drag&drop (левый рис.6.) и из списка полей в бланке запроса (правый рис.6.)

Рис.6.73. Бланк запроса с добавленными полями

Следующим этапом является выбор режима сортировки: либо по возрастанию, либо по убыванию, либо без сортировки (рис.6.74).

Рис.6.74. Выбор режима сортировки

Четвертая строка бланка запроса позволяет управлять выводом на экран соответствующей информации. Если флажок в соответствующем столбце бланка запроса есть, то информации этого поля выводится на экран в результате выполнения запроса, если не флажка – то не выводится (рис.6.73).

Заканчивается оформление запроса заданием условий отбора. При задании условия отбора следует использовать логические операторы такие как ">", "<", "=", ">=", "<=", а также служебные слова "or" – "или", "and" – "и" и др.

Сделать выборку из таблицы "Сессия" студентов экономического факультета, у

которых по физике хорошие и отличные оценки.

Выполнение. Для поля "Факультет" устанавливаем ограничение "="Экон"", а для поля "Физика" – ">3" (рис.6.75).

Название факультета не следует писать в кавычках, MS Access сама добавит

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

Рис.6.75. Оформление условий отбора для полей "Факультет" и "Физика"

Для просмотра результатов запроса используется инструмент "Вид" , а для выполнения запроса инструмент "Запуск" . Следует их различать. Мы знаем, что запрос может быть и на удаление записей в таблице. Так вот выполнение такого запроса приведет к удалению соответствующих записей, а просмотр – покажет те записи, которые могут быть удалены в результате выполнения запроса. Поэтому для отладки запроса следует в основном использовать инструмент "Вид" .

В результате выполнения запроса мы получим динамическую таблицу, приведенную на рис.6.76.

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

Запросы с параметрами

Напомним, что запрос с параметрами — это запрос, который при выполнении просит пользователя ввести данные по одному или нескольким параметрам запроса. Часто пользователю приходиться иметь дело с запросами, которые имеют одинаковую структуру, но различающимися условиями отбора. В этом случае следует сформировать запрос с параметрами. При выполнении запроса СУБД будет запрашивать у пользователя конкретные значения параметров.

Для запроса параметра у пользователя следует добавить название параметра в квадратных скобках и двоеточием в строке "Условие отбора" сразу после условия. Например, мы хотим узнать не только, сколько студентов экономического факультета имеют по физике хорошие и отличные оценки, но и всех сдавших физику студентов. Чтобы не менять условие отбора каждый раз, т.к. структура самого запроса не изменилась, мы добавляем после условия в поле "Физика" название поля в квадратных скобках и с двоеточием (рис.6.77).

Рис.6.77. Создание запроса с параметром

Тогда название этого поля будет выводиться в ходе выполнения запроса (рис.6.78), и мы могли ввести конкретное значение оценки, чтобы узнать, сколько студентов получили по физике больший балл, чем введенное число (рис.6.79)

Рис.6. 78. Диалоговое окно для ввода значения параметра

.

Рис.6. 79. Результат работы запроса с параметром - оценка по физике больше 2

Создать запрос с параметром для поля "Факультет"

Существуют четыре типа запроса на изменение: на удаление записи, на обновление записи, на добавление записи и на создание таблицы.

Покажем составление запроса на изменение на примере запроса на удаление. Создадим запрос на удаление для таблицы "Студенты". В начале делаем обычный запрос на выборку с полями "Номер Зачетки" и "Имя" (рис.6.80).

Рис.6.80. Запрос на выборку для таблицы "Студенты"

Затем перетаскиваем в первое поле ("Номер Зачетки") символ звездочки (*) из списка полей таблицы "Студенты" (рис.6.81).

Рис.6.81. Перетаскивание методом drag&drop символа (*) – "Все поля"

Символ звездочка означает "Все поля". В результате у нас получится следующая картина (рис.6.82).

Рис.6.82. Вид бланка запроса после перетаскивания символа (*)

Следующим шагом является выбор типа запроса на изменения посредством инструмента "Тип запроса" , который находится, как мы видим, рядом с инструментом "Запуск". Щелкаем кнопку открытия списка и выбираем из списка запрос на удаление (рис.6.83).

Рис.6.83. Выбор типа запроса на изменение

После этого действия бланк запроса изменится (рис.6.84) по сравнению со стандартным (рис.6.82).

Рис.6. 84. Бланк запроса на удаление

По сравнению со стандартным в нем нет двух строк "Сортировка" и "Вывод на экран", но появилась строка "Удаление". В первом поле, где у нас выбраны все поля таблицы "Студенты" в строке "Удаление" написано "из", что означает, что будет удалена запись именно из этой страницы. Внимание! Удаляются целые записи, а не отдельные значения поле. Осталось только ввести условие отбора удаляемой (-ых) записей. Например, удалим все записи, где имя "Иван" (рис.6.85).

Рис.6.85. Задание условия отбора для поля "Имя"

Внимание! Запускать запрос не надо, т.к. в результате его выполнения соответствующая запись удалится, поэтому вместо инструмента следует использовать инструмент для просмотра удаляемой записи. В результате получим динамическую таблицу, приведенную на рис.6.86.

Рис.6.86. Динамическая таблица запроса на удаление

Создать запрос на удаление всех записей студентов юридического факультета

Запросы с вычисляемыми полями

Запросы можно использовать для получения новой информации. Например, определения среднего балла студента по результатам сессии. Для этого используются вычисляемые поля. Так как вычисляемое поле это поле, которого нет в таблице или форме, поэтому оно должно иметь имя. Правила оформления вычисляемого поля следующие:

  1. В бланке запроса пишется имя вычисляемого поля с двоеточием;

  2. После имени вычисляемого поля с двоеточием следуют операции его расчета, где имена используемых полей берутся в квадратные скобки (рис.6.87).

Для удобства написания формулы расчета вычисляемого поля следует

открыть окно области ввода. Для этого следует щелкнуть мышью в строке написания имени поля и нажать клавиши "Shift + F2" (рис.6.87).

Создать запрос с вычисляемым полем "Средний балл" по таблице "Сессия".

Рис.6.87. Создание вычисляемого поля запроса с помощью "Области ввода"

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]