Запрос на обновление записей в таблице

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

Общая схема построения запросов на обновление такова:

• В макет запроса добавляются все нужные таблицы и между ними устанавливаются необходимые связи.

• Типзапроса устанавливается в запрос на обновление.

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

• В последнюю очередь добавляются поля, для которых предполагается указать условия отбора.

Примеры допустимых для обновления выражений приведены в таблице 5.1.

Таблица 5.1. Примеры допустимых выражений для обновления полей таблицы.

Выражение Результат
"Днепропетровск" Заменяет значения текстового поля записей, удовлетворяющих условиям отбора, на строку "Днепропетровск"
#8/10/99# Задает новое значение для поля типа дата/время - 10-авг-99
Да (или Yes) Задает значение Да для поля логического типа
"PN" & [Код] Для каждой записи, подлежащей обновлению, значением поля будет комбинация префикса "PN" и строки из поля Код той же записи
[Цена]*[Количество] Значением поля каждой записи, подлежащей обновлению, будет произведение полей Цена и Количество той же записи
Зарплата]* 1.1 Если задано для поля Зарплата, то увеличивает зарплату на 10% в записях, удовлетворяющих условиям отбора
DSum("[Количество]*[Цена]", 'Заказано", "[КодТовара]=" & Код Товара]) Для каждого товара в исходной таблице выбираются значения полей [Количество] и [Цена] из таблицы Заказано и затем суммируется их произведение. Полученное значение итоговых продаж по каждому товару обновляет соответствующее поле исходной таблицы
Фамилия] & " " Left([Имя],1) & "." Left([Отчество],1) & "." Значением поля будет фамилия сотрудника и его инициалы, например, Иванов И.И.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: