Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Материал для подготовки (теория) Базы данных.doc
Скачиваний:
3
Добавлен:
20.07.2019
Размер:
163.84 Кб
Скачать

Создание вычисляемых полей в запросе

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

Например, можно перемножить значения двух полей: Количество и Цена и получить величину Сумма, которая в базе данных не хранится.

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

Предположим, что в таблице Клиент имеются три отдельных поля Фамилия, Имя, Отчество, а нужно вывести эту информацию в одном столбце, Тогда используют оператор "+" или & для соединения текстовых полей.

Перекрестные запросы

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

Например, в таблице Страховая история имеются сведения о сведения о клиенте, а также представлена страховые выплаты каждому клиенту. Требуется определить, когда была проведена последняя выплата по страховому случаю для каждого клиента.

Для создания перекрестного запроса следует воспользоваться позицией "Перекрестный запрос" в окне Новый запрос или через меню Запрос, выбрав соответствующую строку. Далее следовать указаниям Мастера.

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

Запрос с параметрами

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

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

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

Для каждого поля, которое предполагается использовать как параметр в "Конструкторе запросов" необходимо ввести в ячейку строки "Условие отбора" текст приглашения, заключенный в квадратные скобки. Это приглашение будет выводиться при запуске запроса. Текст подсказки должен отличаться от имени поля, но может включать его.

Для каждого поля можно задать диапазон значений.

Запрос на создание таблицы

Запрос на создание таблицы означает запоминание результата запроса в таблице. Чтобы создать запрос необходимо в режиме конструктора выбрать Тип запроса/Создание таблицы. В поле Имя таблицы следует ввести имя таблицы в которую будут перенесены данные.

Новую таблицу с заданными в запросе полями можно открыть как объект Таблица.

Корректирующие запросы

Запрос на обновление

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

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

  • Просмотреть запрос в режиме таблицы;

  • Выполнить запрос как запрос на выборку.

Открытие запроса на обновление означает изменение значений в базе данных. Каждое открытие запроса на обновление будет означать обновление уже обновленных данных.

Запрос на удаление

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

Для создания запроса на удаление следует в режиме Конструктор запроса выбрать соответствующую позицию Удаление в меню Запрос.

Внимание! Если в запросе на удаление не указать условие отбора, то будут удалены все записи.

Запрос на добавление

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

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

Если все поля таблицы-источника должны быть перенесены в целевую таблицу, то можно с помощью мыши переместить символ "звездочка" *.

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