Такие запросы называются запросы на обновление данных. Например, при помощи такого запроса можно осуществлять изменение стоимости книг по дате их издания или по другим условиям. Например, увеличить стоимость на 20% для книг 1998 года издания.
Этой запрос изменяет таблицу, поэтому для полной защиты от возможных ошибок сделайте резервную копию таблицы. Для этого перейдите в окно базы данных, выберите необходимую таблицу и выполните команду Правка - Копировать. Далее выберите команду Правка - Вставить и в окне диалога дайте копии таблицы новое имя.
Прежде, чем обновить данные, создадим запрос на выборку. Проверим, выбираются ли необходимые записи, а после перестроим его в запрос на обновление. В запрос включим поля Год и Стоимость из таблицы Книги. Предоставим возможность вводить год издания как параметр. Для этого в квадратных скобках введем [Введите год] в строке Условие отбора.. Во время выполнения запроса этот текст появится в диалоговом окне для ввода года издания. Проверим, выбираются ли необходимые записи. Далее преобразуем этот запрос в запрос на обновление. Для этого в основном меню выбираем Запрос - Обновление. В строке Обновление вводим выражение [ Стоимость ]*([ наценка ]+100)/100 для пересчета стоимости книг. Это выражение использует еще один параметр [ наценка ], что дает возможность вводить размер наценкив процентах. На экране появляется окно диалога, которое сообщает о количестве обновленных записей. После подтверждения таблица обновляется, и доступа к начальным данным уже нет.
|
|
2.3.2. Запрос на создание новых таблиц. Такие запросы создают новую таблицу и записывают в нее данные из других имеющихся таблиц или запросов.
Например, создадим таблицу, которая содержит информацию о читателях, которые не возвратили книги своевременно.
Перед тем, как сделать запрос на изменение данных, создадим запрос на выборку, чтобы убедиться, что работа идет с необходимыми данными. В запрос включим таблицу Читатели изапрос Запрос 2-2, который для каждого читателя подсчитывает сумму пени.Выберите поля NB, Фамилия, Кафедра, Телефон - Читатели, Count-Инв№, Sum-Стоимость, Sum-Пеня из запроса Запрос 2-2. Соедините таблицу и запрос по полю Фамилия. Для поля Sum-Пеня задайте условие “>0” Это условие будет выбирать тех читателей, у которых есть пеня.
Убедитесь, что запрос выбирает необходимую информацию. Для перестройки запроса на создание таблицы перейдите к команде Запрос-Создание таблицы. В окне диалога наберите имя новой таблицы (например, “Должники на 25 января”). После запуска запроса на экране появится окно диалога с сообщением о количестве записей, которые будут вставлены в таблицу. Для подтверждения создания таблицы нажмите кнопку ДА. На вкладке Таблицы окна базы данных проверьте наличие таблицы с этим именем и просмотрите ее содержимое.
|
|
Рисунок 21. Конструктор запроса 3.2
2.3.3. Создание запросов на удаление данных. Такие запросы разрешают удалять из таблиц группы записей, которые удовлетворяют каким-нибудь условиям.
Например, создадим запрос, который удаляет запись из таблицы ЧитКниги на момент возвращения читателем книги. Для полной защиты от ошибок сделайте резервную копию таблицы. Для этого перейдите в окно базы данных, выберите необходимую таблицу и выполните команду Правка-Копировать. Далее выберите команду Правка-Вставить и в окне диалога дайте копии таблицы новое имя.
Рисунок 22. Конструктор запроса 3.3.
Перед тем, как сделать запрос на изменение данных, создадим запрос на выборку, чтобы убедиться, что работа идет с необходимыми данными.
В запрос включим таблицу ЧитКниги: поля Инв№ и NB. Поставим условия на значения этих полей через параметры [Введите Инв№ книги], [Введите номер читательского билета]. При выполнении этого запроса появятся последовательно два окна диалога для ввода необходимой информации. Убедитесь, что запрос выбирает необходимую информацию.
.
Для перестройки запроса на удаление перейдите к команде Запрос- Удаление. В строке Удаление оставьте Условие. После запуска запроса на экране появится окно диалога с сообщением о количестве записей, которые будут удалены из таблицы. Для подтверждения нажмите кнопку Да. После подтверждения таблица обновляется и доступа к начальным данным уже нет.
Рисунок 23. Результат работы запроса 3-3.