Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Краткая теория_ИТ_БА_ДФО_экз 2012.doc
Скачиваний:
25
Добавлен:
22.09.2019
Размер:
1.82 Mб
Скачать

Запросы, выборка

Запросы, так же, как и фильтры, служат для отбора записей по заданным критериям. Но в отличие от инструмента "Фильтр" запрос – это компонент БД, допускающий многократное использование. Запросы удобно использовать для объединения или выполнения действий над данными, расположенными в нескольких таблицах или запросах.

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

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

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

Запрос – объект базы данных, который используется для извлечения нужной информации из одной или нескольких таблиц базы данных или для выполнения определенных действий с данными.

При выполнении запроса MS Access создает набор записей, содержащий выбранные данные. Этот набор называется выборкой или динамиче­ской таблицей.

Выборка (динамическая таблица) – представленный на экране ре­зультат выполнения запроса.

С выборкой можно работать так же, как с таблицей – просматривать, печатать, обновлять данные. Однако этот набор записей, в отличие от реальных таблиц, не существует в базе данных. MS Access создает его из данных таблиц и других запросов только во время выполнения опре­деленного запроса. При изменении данных выборки Access вносит соот­ветствующие изменения в таблицы, на базе которых построен запрос. Таким образом, выборка представляет собой динамическое множество записей данных, которое постоянно обновляется. Удаленные из таблиц базы данных записи не будут появляться в выборке, новые же записи будут добавлены. Любые изменения записей выборки отражаются на состоянии соответствующих записей таблиц базы данных и наоборот.

Запросы можно классифицировать по результатам их действий и особенностям выполнения. При таком подходе можно выделить:

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

  • параметрические запросы (или запросы с параметрами), которые позволяют задавать конкретные условия отбора непосредственно при выполнении запроса;

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

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

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

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

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

  • Запрос на добавление добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц.

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

Запрос на выборку можно использовать не только для того, чтобы вы­бирать из таблиц базы данных содержащуюся в них информацию. В запросе на выборку Access позволяет также производить вычисления и отображать результаты вычислений в динамической таблице. Например, можно найти сумму или среднее по значениям какого-либо поля, пере­множить значения двух полей или объединить содержимое нескольких полей исходной таблицы в одно выходное поле.

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

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

Таким образом, вычисляемое поле – поле, определенное в запросе для вывода результата вычисления выражения (а не для сохранения дан­ных).

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

Для построения запроса в Access могут быть использованы мастер запросов или конструктор запросов.

Конструктор запросов позволяет создавать новые и изменять существующие запросы, поэтому он является основным способом при создании запросов QBE.

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

Назначение строк в бланке Конструктора запросов:

1 -я строка - Поле - для ввода имени поля запроса и обозначения поля — источника данных или вычисляемого выражения;

2-я строка - Имя таблицы - предназначена для задания имени таблицы — источника данных;

3-я строка - Сортировка - предназначена для указания порядка сортировки в данном поле. Может принимать следующие значения: по возрастанию, по убыванию, отсутствует;

4 -я строка - Вывод на экран - содержит флажок, указывающий на то, будет ли выводиться соответствующее значение поля;

5-я строка и др. - Условие отбора - содержит критерий, по которому будет происходить отбор записей в результирующую таблицу.

Мастер запросов позволяет создавать следующие виды запросов:

  • простой запрос (выборка из определенных полей)

  • перекрестный запрос

  • повторяющиеся записи (поиск повторяющихся записей)

  • запрос без подчиненных (поиск записей, которым не соответствует ни одна запись в подчиненной таблице)