ПРАКТИЧЕСКАЯ РАБОТА №3
СОЗДАНИЕ ЗАПРОСОВ В СРЕДЕ MS ACCESS
Цель работы: изучение процесса создания различных запросов на выборку
Создание простого запроса с помощью Мастера запросов
Откройте файл Турагенство.mdb
Наиболее просто создается запрос при помощи Мастера запросов. Чтобы создать простой запрос с помощью Мастера запросов, необходимо:
1. В окне базы данных на панели объектов выбрать ярлык Запросы
2. В списке запросов дважды щелкнуть левой кнопкой мыши на ярлыке Создание запроса с помощью мастера или нажать на кнопку Создать в окне базы данных и в появившемся диалоговом окне Новый запрос выбрать Простой запрос и нажать на кнопку ОК (рис. 3.1).
Рис. 3.1. Окно создания нового запроса
3. В появившемся окне Создание простых запросов (рис. 3.1) в поле со списком Таблицы и запросы выбрать таблицу или запрос, которые будут служить источником данных для создаваемого запроса.
Рис. 3.2. Первое диалоговое окно Мастера простых запросов
4. С помощью стрелок вправо и влево переместить из списка Доступные поля в список Выбранные поля те поля, которые необходимы в конструируемом запросе. При этом порядок полей в запросе будет соответствовать порядку полей в списке Выбранные поля. Если нужно включить в запрос все поля, можно воспользоваться кнопкой с двумя стрелками вправо.
5. Нажать кнопку Далее.
6. Следующее диалоговое окно будет последним. В нем нужно ввести имя создаваемого запроса (рис. 3.2) в поле Задайте имя запроса и выбрать дальнейшие действия: Открыть запрос для просмотра данных или Изменить макет запроса.
7. При необходимости можно установить флажок Вывести справку по работе с запросом? для вывода справочной информации по работе с запросами.
8. Нажать на кнопку Готово.
Рис. 3.3. Окно Мастера простых запросов на втором шаге
По окончании работы Мастера простых запросов в зависимости от выбора способа дальнейшей работы с запросом откроется или окно запроса в режиме просмотра (рис. 3.3), или окно Конструктора запросов, в котором можно модифицировать запрос. В качестве примера построения простого запроса с помощью Мастера простых запросов рассматривается создание запроса, содержащего все поля таблицы «Тур». результатом работы Мастера запросов стал запрос "Тур Запрос", изображенный на рис. 3.4.
Рис. 3.4. Окно запроса в режиме просмотра
9.
Перейдите в режим
Конструктора по кнопке Вид .
Появляется окно Конструктора запросов (рис. 3.5). В верхней части окна отображается таблица (или несколько таблиц, если запрос многотабличный) в том виде, в каком таблицы отображаются в окне Схема данных.
Таблицы — источники данных для запроса, мы будем называть базовыми таблицами запроса. В нижней части окна находится бланк запроса — таблица, ячейки которой используются для определения запроса. В бланке отображаются все столбцы, включенные в результирующее множество запроса.
Для того чтобы просматривать полностью бланк запроса и все исходные таблицы, используют линейки прокрутки.
В области панелей инструментов MS Access отображается панель инструментов Конструктор запросов.
Рис. 3.5. Окно запроса в режиме конструктора
10. Задайте условие отбора туров, имеющих льготы для детей: в графе Условие отбора в поле Льготы для детей введите «да», в графе Вывод на экран снимите галочку (рис. 3.6).
Рис. 3.6. Условия отбора в бланке запроса
11.
Просмотрите
результат выполнения запроса в режиме Таблицы по кнопке Вид .
12. Закройте запрос.
Создание запроса с помощью конструктора
А теперь рассмотрим, как создать новый запрос с помощью Конструктора запросов. Для этого необходимо:
1. В окне базы данных на панели объектов выбрать ярлык Запросы
2. В списке запросов выбрать ярлык Создание запроса в режиме конструктора или нажать кнопку Создать, в появившемся окне Новый запрос выбрать Конструктор и нажать на кнопку ОК.
3. В окне Добавление таблицы (см. рис. 3.7) выбрать одну или несколько таблиц или запросов для построения нового запроса и нажать кнопку Добавить Для удобства выбора таблиц и запросов в окне существуют следующие вкладки: Таблицы, на которой отображается список таблиц; Запросы, на которой отображается список запросов; Таблицы и запросы, на которой отображается список таблиц и запросов вместе.
Рис. 3.7. Окно Добавление таблицы Конструктора запросов
4. После добавления всех необходимых таблиц нажать кнопку Закрыть в окне Добавление таблицы. Все выбранные таблицы оказываются помещенными на верхней панели окна Конструктора запросов. Если таблицы связаны между собой, т. е. связи присутствуют явно на схеме данных, то эти связи также отображаются (рис. 3.8). Если связи на схеме данных не установлены, то Конструктор запросов автоматически устанавливает связи между таблицами, если они содержат поля, которые имеют одинаковые имена и согласованные типы .
Рис. 3.8. Запрос по нескольким связанным таблицам
Внимание
Иногда Конструктор устанавливает лишние связи, основываясь только на именах и типах полей. Это может привести к некорректным результатам запроса, поэтому нужно обязательно проверять, как отображаются связи между таблицами в окне Конструктора запросов, и удалить вручную лишние связи. Для этого выделите лишнюю связь, щелкнув по ней левой кнопкой мыши, и нажмите клавишу <Delete>.
5. Удалите лишнюю связь, как указано выше.
6. Затем нужно указать, какие поля из базовых таблиц будут отображаться в запросе. Включать в запрос можно поля из любой таблицы. Способов включения полей в запрос существует несколько:
1. Выделите нужное поле в таблице-источнике (можно выделить несколько полей, пользуясь клавишами <Shift> и <Ctrl>). Если требуется включить в запрос все поля базовой таблицы, выделите поле, обозначенное звездочкой (*). Дважды щелкните левой кнопкой мыши на выделенном поле. При этом в бланке запроса появится столбец, соответствующий выбранному полю.
2. Для добавления всех полей можно сделать двойной щелчок левой кнопкой мыши по строке заголовка таблицы, подвести указатель мыши к выделенной синим цветом области и «перетащить» в бланк запроса все поля.
3. Можно подвести указатель мыши к выделенному полю (одному из выделенных полей), нажать на левую кнопку мыши и перетащить поле (поля) в нужное место бланка запроса (указатель мыши при этом должен принять вид трех прямоугольников). Последний способ позволяет помещать поля в любое место бланка запроса.
4. И наконец, вместо перетаскивания полей в бланк запроса из таблицы можно просто использовать раскрывающийся список полей в строке Поле бланка запроса
7. Включите в запрос поля в соответствии с примером (рис. 3.9).
Рис. 3.9. Бланк запроса
8.
Просмотрите
результат выполнения запроса в режиме Таблицы по кнопке Вид .
9. Закройте запрос, сохранив его, в диалоговом окне Сохранение введите имя запроса «Ж/д туры».
Рис. 3.10. Диалоговое окно Сохранение запроса
10. Посмотрите, как отображаются созданные запросы в окне Базы данных.
Рис. 3.11. Вкладка Запросы в окне Базы данных
Создание запроса с параметром
Запрос в Access является объектом, который сохраняется в файле базы данных и может многократно повторяться. Все запросы, которые мы создавали до сих пор, содержали конкретные значения дат, названий, имен и т. д. Если требуется повторить такой запрос с другими значениями в условиях отбора, его нужно открыть в режиме Конструктора, изменить условие и выполнить. Чтобы не делать многократно этих операций, можно создать запрос с параметрами. При выполнении такого запроса выдается диалоговое окно Введите значение параметра, в котором пользователь может ввести конкретное значение и затем получить нужный результат.
1. Создайте новый запрос в режиме Конструктора аналогичный предыдущему.
2. Чтобы определить параметр запроса, введите в строку Условие отбора для столбца "Страна" вместо конкретного значения слово или фразу и заключите их в квадратные скобки, например [Введите страну]. Эта фраза будет выдаваться в виде приглашения в диалоговом окне при выполнении запроса (рис. 3.12).
Рис. 3.12. Диалоговое окно Введите значение параметра
3.
Нажмите кнопку Запуск
на панели инструментов, чтобы
выполнить запрос, или откройте запрос в режиме таблицы по кнопке Вид.
При выполнении запроса появляется диалоговое окно Введите значение параметра,
в которое нужно ввести конкретное значение, например «Испания». Результат
выполнения запроса представлен на рис. 3.13. В него попадают только туры в
Испанию.
Рис. 3.13. Результат выполнения запроса с параметром
В одном запросе можно ввести несколько параметров. При выполнении такого запроса для каждого из параметров будут поочередно выводиться диалоговые окна Введите значение параметра в том порядке, в котором параметры перечислены в бланке запроса.
Запросы с вычисляемыми полями
В запросах, в отличие от таблиц над полями могут производиться вычисления. При этом могут использоваться как арифметические выражения так и встроенные функции ACCESS . Вычисляемое поле, включенное в запрос позволяет получить новое поле с результатами вычислений только в таблице запроса и не создает полей в таблицах БД.
Сформировать выражение
можно при помощи Построителя выражений, который запускается из
контекстного меню, связанного со строкой Условие отбора на бланке
или при помощи соответствующей кнопке на панели инструментов . При
составлении выражений имена полей заключаются в квадратные скобки, символьные
константы - в кавычки, имена объектов БД отделяются от полей "!" .
Примеры вычисляемых полей
Стоимость: [Товары]![Цена]*[Продажи]![Количество]
Клиенты: [Клиенты]![Фамилия] & ‘‘ ’’&[ Клиенты]![Имя]& ‘‘ ’’& [Клиенты]![Отчество]
Общие сведения о построителе выражений
Окно построителя выражений состоит из трех разделов, располагающихся сверху вниз.
Рис. 3.14. Окно построителя выражений
Поле выражения. В верхней части окна построителя расположено поле, в котором создается выражение. Ниже находится раздел, предназначенный для создания элементов выражения и их последующей вставки в поле выражения. Допускается непосредственный ввод части выражения в поле выражения.
Кнопки операторов. В средней части окна построителя находятся кнопки с часто используемыми операторами. При нажатии на одну из этих кнопок построитель вставит соответствующий оператор в текущую позицию поля выражения. Чтобы вывести полный список операторов, выберите папку Операторы в нижнем левом поле и нужный тип в среднем поле. В правом поле будут выведены все операторы выбранного типа.
Элементы выражения. В нижней части окна построителя находятся три поля.
· В левом поле выводятся папки, содержащие таблицы, запросы, формы, объекты базы данных, встроенные и определенные пользователем функции, константы, операторы и общие выражения. Если запрос сохранен в памяти, построитель выражений открывает по умолчанию этот запрос и в среднем поле доступны поля запроса.
· В среднем поле задаются определенные элементы или типы элементов для папки, заданной в левом поле. Например, если выбрать в левом поле Встроенные функции, то в среднем поле появится список всех типов функций Microsoft Access.
· В правом поле выводится список значений (если они существуют) для элементов, заданных в левом и среднем полях. Например, если выбрать в левом поле Встроенные функции и тип функции в среднем, то в правом поле будет выведен список всех встроенных функций выбранного типа.
Создание запроса в вычисляемыми полями:
1. Прежде чем мы создадим запрос с выражением, откройте таблицу «Тур» в режиме Конструктора и добавьте поле «Заказано» числового типа, размер поля – байт.
2. Перейдите в режим Таблицы, сохранив изменения структуры таблицы и заполните поле произвольными числами ( от 1 до 20).
3. Создайте запрос на основе таблицы «Тур». Включите поля «Страна_Код» (обратите внимание, что это поле подстановки), «Цена» и «Заказано».
4.
Сохраните запрос
под именем «Сумма заказов»( это можно сделать по кнопке Сохранить ,
не закрывая запрос).
5.
Установите курсор
в свободном столбце бланка запроса в графе Поле и вызовите
Построитель выражений кнопкой Построить или пункт Построить
контекстного меню.
6. Введите выражение [Цена] * [Заказано] в Поле выражения (поля вставляются двойным щелчком мыши или выделить поле и нажать кнопку Вставить), и нажмите кнопку «ОК».
7. Будет вставлено Выражение1: [Цена]*[Заказано], безликое «Выражение1» замените на «Сумма».
Рис. 3.15. Бланк запроса с вычисляемым выражением
8. Просмотрите результат выполнения запроса.
Задание для самостоятельной работы
1. Создайте запрос, отображающий туры, которые не имеют льготы для детей.
2. Создайте запрос, отображающий туры, продолжительностью до 10 дней.
3. Создайте запрос, отображающий туры в Великобританию.
4. Создайте запрос, отображающий туры в Испанию или Италию.
5. Создайте запрос, отображающий туры, стоимость которых находится в интервале от 10 000 до 20 000 .
6. Создайте запрос, отображающий железнодорожные туры в Германию
Примечание
В строке Условие отбора и в строке ИЛИ (Or) указываются условия отбора записей. Такими условиями могут быть логические выражения. Например, (>30), (='Иванов'), (=10) и т. п.
Условия, находящиеся в одной строке, но в разных столбцах бланка, объединяются по логическому оператору And (И). Если нужно объединить условия отбора по логическому оператору Or (ИЛИ), разместите эти условия в разных строках бланка запроса. Пример использования нескольких условий отбора приведен на рис. 3.16
Рис. 3.16. Задание критериев отбора записей в запросе
Скачано с www.znanio.ru
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.