Общая информация запросах на изменение

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

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

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

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

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

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

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

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

 

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