Упражнение 2. Создание запроса на выборку
В этом упражнении мы создадим запрос на выборку музеев, имеющих входную плату не более 4 евро. Результирующая таблица должна содержать также адрес музея и номер его название.
- Запустите программу Microsoft Access 2007 (Пуск ► Программы ► Microsoft Access).
- В окне Microsoft Access включите переключатель Открыть базу данных, выберите ранее созданную базу Музеи Лейдена и щелкните на кнопке ОК.
- В окне Создание откройте панель Запросы. Щелкните на значке Создание запроса в режиме Конструктора — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.
- В окне Добавление таблицы выберите таблицу Музеи Лейдена и щелкните на кнопке Добавить. Закройте окно Добавление таблицы.
- В списке полей таблицы Музеи Лейдена выберите поля, включаемые в результирующую таблицу: Наименование, Адрес, Входная плата. Выбор производите двойными щелчками на именах полей.
- Задайте условие отбора для поля Входная плата. В соответствующую строку введите: <=4. Из таблицы будут выбираться только те музеи, в которых входная плата не более 4 евро. Укажите необходимость сортировки для входной платы «по убыванию».
- Сохраните бланк запроса. При сохранении запроса введите его имя Входная плата.
- Запустите только что созданный запрос с помощью кнопки Выполнить.
- Результирующая таблица должна выглядеть:
- По окончании исследований закройте все открытые объекты и завершите работу с программой Microsoft Access.
Упражнение 3. Создание запросов «с параметром»
Выше мы рассмотрели, как действует условие отбора, но должны отметить его существенный недостаток. Пользователь базы данных работает с запросами, которые ему подготовил разработчик. Если, например, разработчик предусмотрел запрос, отбирающий изделия, имеющие входную плату не более 4 евро, то пользователь базы уже не в состоянии отобрать другие музеи, поскольку у него нет соответствующего запроса.
Специальный тип запросов, называемый запросами «с параметром», позволяет пользователю самому ввести критерий отбора данных на этапе запуска запроса. Этим приемом обеспечивается гибкость работы с базой.
Создадим простой запрос, позволяющий отбирать музеи, предельную входную плату которых пользователь может задать сам при запуске запроса.
- Запустите программу Microsoft Access 2007 (Пуск ► Программы ► Microsoft Access).
- В окне Microsoft Access включите переключатель Открыть базу данных, выберите ранее созданную базу Музеи Лейдена и щелкните на кнопке ОК.
- В окне Создание откройте панель Запросы. Щелкните на значке Создание запроса в режиме Конструктора — откроется бланк запроса по образцу.
- Согласно упражнению 2, создайте запрос на выборку, основанный на таблице Музеи Лейдена, в который войдут следующие поля:
- Наименование;
- Адрес;
- Входная плата;
- Примечания.
- Строку Условие отбора для поля Входная плата надо заполнить таким образом, чтобы при запуске запроса пользователь получал предложение ввести нужное значение.
Текст, обращенный к пользователю, должен быть заключен в квадратные скобки. Если мы хотим дать пользователю возможность выбора, мы должны написать: <= [Введите максимальную цену].
- Закройте запрос. При закрытии сохраните его под именем Выбор входной платы.
- Запустите запрос Выбор входной платы — на экране появится диалоговое окно Введите значение параметра.
- Введите какое-либо число и щелкните на кнопке ОК. В зависимости от того, что реально содержится в таблице Музеи Лейдена, по результатам запроса будет сформирована результирующая таблица.
- Закройте все объекты базы данных. Закройте программу Microsoft Access.
Мы научились формировать запросы «с параметром» и узнали, что в основе этого вида запросов лежат запросы на выборку, у которых в поле Условие отбора записан заключенный в квадратные скобки текст, обращенный к пользователю.