До сих пор вы сталкивались с запросами, выполняющими выборку данных и
некоторые вычисления. Однако запросы могут применяться также для
добавления, удаления и обновления группы записей таблицы базы данных
Access. Такие запросы являются мощным инструментом преобразования
данных, они называются запросами действия. Предположим, что по каким-то
причинам вам понадобилось скорректировать даты контактов, заменив во
всех записях таблицы Список, относящихся к 1999 году, месяц ноябрь на
декабрь. Подобную операцию трудно проделать вручную, если в таблице
содержится несколько тысяч записей. Запрос действия позволяет быстро
решить поставленную задачу.
1. В окне базы данных Access щелкните на кнопке Таблицы.
2. Выделите таблицу Список, данные которой нужно обновить.
3. В палитре кнопки Новый объект выберите пункт Запрос. Откроется окно диалога Новый запрос, показанное на рис. 17.8. Подобное окно открывается и при щелчке на кнопке Создать окна базы данных. Оно позволяет выбрать наиболее удобный способ создания объекта.
Рис. 17.8. Создание запроса
4. Дважды щелкните на строке Конструктор. Таблица Список, выделенная в окне базы данных на шаге 2, автоматически появится в окне конструктора запросов.
5. Перетащите в бланк запроса поле Дата, значение которого нужно обновлять.
Примечание
Название поля, заключенное в квадратные скобки, является ссылкой на
значение поля. Чтобы сослаться на поле другой таблицы, нужно в начале
указать имя таблицы, а затем имя поля (оба имени в квадратных скобках) и
разделить их восклицательным знаком. Например [Контакты]! [Фамилия].
6. В палитре кнопки Тип запроса выберите пункт Обновление.
Описание всех возможных вариантов запросов, предлагаемых программой
Access, приведено в табл. 17.2. Структура бланка запроса видоизменяется в
соответствии с типом запроса. В бланке выбранного варианта запроса на
обновление появляется поле Обновление, в которое нужно ввести
новое значение поля. Чтобы изменить месяц даты с ноября на декабрь,
достаточно прибавить к дате 30 дней.
7. Введите в ячейку Обновление формулу [Дата] +30.
ТАБЛИЦА 17.2. Варианты запросов
Тип
|
Описание
|
Выборка
|
Выборка данных в таблицу результата запроса на основе указанных условий отбора
|
Перекрестный
|
Результат запроса выводит статистические значения (сумму, количество или
среднее) для одного из полей таблицы в зависимости от двух параметров
других полей таблицы, задающих заголовки строк и столбцов результата
перекрестного запроса
|
Создание таблицы
|
Создание новой таблицы в текущей или в другой базе данных на базе информации из имеющихся таблиц
|
Обновление
|
Обновление данных таблицы
|
Добавление
|
Добавление набора записей в таблицу
|
Удаление
|
Удаление записей таблицы в соответствии с указанным критерием
|
8. Чтобы обновлялись только даты, относящиеся к ноябрю 2000 года,
введите в ячейку Условие отбора формулу Between DateValue ("1.11.99")
And DateValue ("30.11.99"), которая подробно обсуждалась в ранее (рис.
17.12).
9. Закройте запрос, сохранив его под именем Обновление.
10. Щелкните на кнопке Таблицы окна базы данных и двойным щелчком на значке Список откройте эту таблицу. В ней есть четыре записи, относящиеся к ноябрю 2000 года.
Примечание
Запросы действия могут выполнять широкомасштабные изменения данных,
которые отменить уже невозможно. Будьте внимательны. Перед запуском
таких запросов полезно сделать резервную копию базы данных, чтобы иметь
возможность возвратиться к исходному состоянию таблиц. Значки запросов
действия снабжены восклицательным знаком, предупреждающим об их особой
роли.
11. В окне базы данных щелкните на кнопке Запросы.
12. Дважды щелкните на значке Обновление.
Ответьте Да на вопрос о необходимости запуска запроса
действия. Access проинформирует вас об обнаружении четырех записей,
удовлетворяющих условию отбора, и попросит подтвердить необходимость их
изменения.
Рис. 17.9. Запрос на обновление
13. Щелкните на кнопке Да и изучите изменения, произошедшие с данными таблицы Список.
|