Читайте также:
|
|
Лабораторная работа №7, 8
Создание запросов вручную (с помощью конструктора)
Цель: Приобрести умения создать запросы, используя, Конструктор запросов. Использовать в запросах условие отбора и функции: Sum, Null, Left, Month и Year.
Студенты должны:
Знать: Алгоритм создания запроса в режиме Конструктора запросов, алгоритм добавления условия отбора и функций в запрос.
Уметь: Создавать различные запросы с помощью Конструктора.
Пояснения к работе
Режим Конструктора является наиболее общим способом при создании запросов, выходящих за рамки описанных выше.
Создание запроса при открытом в окне базы данных объекте Запросы в режиме Конструктора может быть выполнено двумя способами: нажатием кнопки Создать и дальнейшим выбором команды Конструктор, либо выбором команды Создание запроса в режиме Конструктора.
Для перевода ранее созданного запроса в режим Конструктора достаточно выделить требуемый в списке запрос и выполнить команду Конструктор в меню окна базы данных.
Составление запроса в режиме Конструктора в общем случае включает в себя следующие шаги:
1. Указать нужные таблицы и их поля.
2. (при необходимости) Описать вычислимые поля и групповые операции над записями.
3. Задать условия отбора записей в результирующем наборе.
4. Определить параметры отображения результатов выполнения запроса (показ полей, направление сортировки полей).
5. Выполнить сохранение и ввести имя созданного запроса.
Пример 1. Создать запрос Экзамены, отображающий название группы, наименование дисциплины, для которой формой итогового контроля является «экзамен», а также количество теоретических часов.
После запуска Конструктора отрывается окно запроса и поверх него окно добавления таблицы, с помощью которого осуществляется выбор таблиц включаемых в запрос. Для нашего запроса потребуются таблицы Дисциплины, Занятия и Группы.
Примечание 1: Если в результирующем наборе будут присутствовать поля таблиц напрямую не связанных между собой, то в запрос должны быть включены все связующие их таблицы в соответствии со Схемой данных.
Примечание 2. Включение в запрос требуемых таблиц может быть выполнено либо командой главного меню Запрос/Отобразить таблицу…, либо кнопкой Отобразить таблицу на панели инструментов Конструктор запросов.
Выбор полей, которые включаются в запрос, выполняется либо двойным щелчком по имени поля, либо необходимо перетащить их из таблиц или выбрать их в строке Поле табличной части окна конструктора запроса. В данном случае это поля Группа, Название, КоличествоТеоретическихЧасов и ФормаИтоговогоКонтроля, причем порядок полей в запросе может быть произвольным.
Условием отбора в данном случае является вывод только дисциплин с формой итогового контроля «экзамен», поэтому в строке Условие отбора столбца ФормаИтоговогоКонтроля необходимо указать интересующую нас форму.
Примечание 3. При записи условия отбора допустимо использование:
Операций сравнения: >, <, >=, <=, <>, = (предполагается по умолчанию).
Логических операций: And, Or (можно использовать строку ИЛИ, которая находится после строки Условие в окне конструктора запроса), Not.
Логических функций: Between Знач1 And Знач2 – определяет диапазон значений от Знач1 до Знач2 и эквивалентно записи >= Знач1 And <=Знач2), In (Знач1,Знач2,…) – определяет выбор из списка, Like –определяет соответствие строкового выражения маске, для записи которой используются символы * (любое количество произвольных символов) и? (один произвольный символ).
В строке Сортировка соответствующего поля можно (но не обязательно) указать тип сортировки (по возрастанию или по убыванию). Выберите сортировку по возрастанию для поля Группа.
Для работы с созданным запросом можно воспользоваться различными режимами, переключаемыми командой главного меню Вид или кнопкой Вид на панели инструментов: Конструктор – режим конструирования запроса, Режим таблицы – только просмотр записей, которые будут отобраны при запросах на изменение, Режим SQL – автоматически созданная инструкция по сконструированному запросу.
Для того, чтобы выполнить запрос, можно воспользоваться командой Запрос/Запуск или кнопкой на панели инструментов , в этом случае в таблицах базы данных фиксируются все изменения данных предписанные запросом.
Проверьте выполнение запроса и сохраните его. В полученном результирующем наборе в поле ФормаИтоговогоКонтроля содержится одинаковая информация, поэтому отключите его Вывод на экран.
Пример 2. Измените созданный запрос Экзамены таким образом, чтобы наименования дисциплин, для которых формой итогового контроля является «экзамен» выводились для какой-либо группы (например, 3АСУ).
Для этого в строке Условие отбора столбца Группа необходимо указать интересующую нас группу. Однако для отображения сведений по другой группе необходимо переписать предыдущее условие, указав требуемую группу. Это крайне неудобно. Решение такой проблемы осуществляется добавлением в запрос в качестве условия отбора Параметра, что является требованием пользователю в процессе выполнения запроса ввести значение.
Для этого в строке Условие отбора вместо конкретного значения поля указывается в квадратных скобках приглашение на ввод значения: [Введите значение параметра] (в нашем случае, например, [Введите группу]).
Примечание 4. Если вводимое пользователем значение параметра нужно сравнивать не с полным значением поля, а с его частью, то необходимо воспользоваться обозначениями маски? и *. Например, Like [Группа] & "*" – в этом случае при вводе пользователем значения «АСУ» на экран будут выведена информация о всех группах данного курса.
Пример 3. Измените ранее созданный запрос Дисциплины так, чтобы для дисциплины отображалась ее общая учебная нагрузка (сумма теоретических и лабораторных часов), полученный запрос сохранить под новым именем Нагрузка.
При создании запросов в результирующем наборе данных допускается создание вычислимых полей, значения которых формируются в процессе выполнения арифметических операций и использования набора специальных встроенных функций над значениями других полей результирующего запроса.
Значения вычислимых полей формируются каждый раз при выполнении запроса.
Для создания вычислимого поля в запросе необходимо в строке Поле ввести имя нового поля, поставить двоеточие, а затем ввести формулу вручную или воспользоваться Построителем выражений, который вызывается кнопкой Построи ть… на панели инструментов.
При построении выражений необходимо учитывать, что имена таблиц и полей заключаются в квадратные скобки, а оператор! указывает на то, что следующий за ним элемент является элементом, определяемым пользователем.
Примечание 5. Если имя вычислимого поля не указано, то по умолчанию оно будет определено как Выражение1 и может в дальнейшем по усмотрению пользователя быть переименовано.
Пример 4. Вывести список преподавателей принятых на работу в прошлом учебном году в определенном месяце (указание месяца осуществляется в параметре).
Указание. Произведите вычисление текущего месяца и года (см. рисунок).
Пример 5. Изменить запрос Расписание так, чтобы вместе с фамилией преподавателя выводились и его инициалы (после инициалов должны быть точки).
Указание. Для отображения инициалов необходимо с помощью Построителя выражений создать вычислимое поле с использованием встроенной текстовой функции Left (удалите поле Фамилия и задайте новое поле, которое вычисляет фамилию преподавателя и его инициалы). Длясоединения нескольких функций используется знак & (Left(…) & Left(…), чтобы присоединить точку к инициалу необходимо воспользоваться знаком &, точку необходимо вводить в апострофах).
Пример 6. Получить список всех студентов указанного пользователем курса и какой-либо специальности (например, 1 курса специальности «Автоматизированные системы управления»).
Указание. Создать запрос с полями Фамилия, Имя, Отчество (данные поля выводятся на экран), Курс и Специальность (данные поля не выводятся на экран). В полях Курс и Специальность указывается условие отбора, например [Введите курс].
Пример 7. Получить сведения о преподавателях, не имеющих телефона: ФИО, должность, цикловая комиссия.
Указание: Использовать функцию Null.
Задание:
1. Создать запрос на выборку, используя режим Конструктора запросов (см. пример 1).
2. В созданный в задании 1 запрос добавить условие отбора (см. пример 2).
3. Создать запрос, в котором происходит вычисление суммы полей (см. пример 3).
4. Создать запрос, в котором используются функции Month и Year (см. пример 4).
5. Создать запрос, в котором используется функция Left (см. пример 5).
6. Создать запрос, в котором используется функция Null (см. пример 7).
Оцениваниеработы
Оценку «3» студент получает, если он выполнил задания 1–4;
«4» – все задания 1–5;
Дата добавления: 2015-07-24; просмотров: 131 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Автоматическое создание запросов с помощью мастеров | | | Перепишите алфавит и выучите его наизусть. |