Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_методичка.doc
Скачиваний:
11
Добавлен:
09.11.2019
Размер:
542.21 Кб
Скачать

4.2.Создание qbe-запроса

  • выбрать вкладку Запросы окна БД

  • кн. Создать в окне БД

  • в открывшемся окне Новый запрос выбрать способ создания запроса:

  • Простой запрос позволяет создать с помощью мастера запрос на выборку (отбор) данных.

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

  • Повторяющиеся записи. Этот способ позволяет с помощью мастера отобрать в динамический набор данных с заданными полями повторяющиеся записи из таблицы - источника.

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

  • Конструктор - режим конструирования запросов на языке без мастера с использованием бланка запроса. Это основной режим создания и редактирования запросов. Подробнее работа в этом режиме описана ниже.

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

  1. по кн. Режим таблицы, расположенной слева на ПИ (если в данный момент установлен режим конструктора запросов)

  2. выбрать режим таблицы из раскрывающегося списка (слева от кн. Конструктор)

  3. из меню  Вид/Таблица

Аналогично можно переходить в режимы конструктора и режим SQL.

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

  • Исполнить запрос можно, находясь в режиме конструктора (кн. Выполнить на ПИ, на которой изображен восклицательный знак, или из меню  Запрос/Выполнить ) или после сохранения запроса, находясь в окне БД (выделить запрос в окне БД, кн. Открыть или по имени запроса).

4.3. Заполнение бланка запроса

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

  • отобразить в строке Поля внизу бланка поля, которые необходимо использовать для получения ответа. Это можно сделать следующими способами:

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

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

  • выбрать нужное поле из списка в строке Поле внизу бланка запроса

Добавление нескольких полей одновременно:

  • выделить несколько полей в списке полей в таблице в верхней части бланка (выделение смежных, т. е. расположенных рядом, полей производится при нажатой клавише Shift, а не смежных - при нажатой клавише Ctrl)

  • на любом выделенном поле, перетащить и бросить в соответствующий столбец в строку Поле внизу бланка запроса.

Добавление всех полей таблицы:

  • на символе “звездочка”, расположенном вначале списка полей каждой таблицы, добавленной в верхнюю часть бланка

  • перетащить мышью и бросить этот символ из нужной таблицы в соответствующий столбец строки Поле. В этом случае в динамический набор данных будут включены все поля таблицы.

  • можно потребовать отсортировать данные динамического набора по одному или нескольким смежным полям. Если поля не смежные, то нужно выполнить перестановку столбцов так же как это делается при изменении макета таблицы.

  • включить/выключить (если не нужно выводить на экран значения этого поля в динамическом наборе данных) флажок Вывод на экран

  • написать в соответствующих столбцах условия для отбора данных, если в этом есть необходимость. Условие отбора может быть записано в одном столбце бланка или в нескольких. В последнем случае запрос будет булевским с использованием операции AND. Чтобы построить булевский запрос с использованием операции OR, необходимо воспользоваться строкой или бланка запроса. По такому же принципу можно создать булевский запрос с использованием обеих операций.

Примеры условий

  • 2 (равно двум для числового поля, знак = можно не писать); < >2(не равно двум); Москва (равно символьной константе Москва, кавычки можно не ставить, ACCESS сделает это автоматически, преобразуя эту константу к виду “Москва”

  • Between 10 and 50 (этим оператором можно отобрать значения от 10 до 50 включительно)

  • In( 1;2;5;12)-функция, обозначающая принадлежность множеству значений 1,2,5,12

  • Null (пусто)- не введено никакого значения. ACCESS в этом случае автоматически добавит оператор Is так, чтобы условие было записано в виде IsNull.

  • Not IsNull (не пусто), т. е. значение введено

  • <#01.10.99# (символ # можно не писать, ACCESS это сделает автоматически) - означает ранее указанной даты 01.10.99

  • >=Date() AND <=Date() + 6 , что означает позже сегодняшней даты (ее выдаст функция Date() и не позже шести дней после сегодняшней даты

  • при задании условий можно использовать символы-заменители (шаблоны) вместе в оператором Like: * - любая группа символов и ? - любой одиночный символ . Например, вывести все фамилии, начинающиеся на букву А можно, задав условие отбора в виде Like A* ( после нажатия клавиши Enter ACCESS преобразует это условие к виду Like “A*”)

  • отбор данных можно производить и в поле Memo. В этом случае осуществляется сканирование по заданной символьной константе всего текста поля Memo.

Для задания условия отбора можно воспользоваться построителем выражений.