Теперь преобразуйте запрос на выборку в запрос на добавление данных.
1. Щелкните правой кнопкой мыши на заголовке вкладки запроса. Нажмите кнопку Конструктор.
2. На вкладке Конструкторв группе Тип запросавыберите команду Добавление. Откроется окно Добавление(рис. 6.8).
Рис. 6.8.Окно Добавление
3. В списке имя таблицывыберите название результирующей таблицы – Заказы. Установите переключатель в положение в текущей базе данных. Нажмите кнопку ОК.
4. В бланке запроса появилась новая строка Добавление. Для каждого поля выборки укажите поле назначения результирующей таблицы Заказы, выбирая названия полей из раскрывающегося списка.
Результирующий бланк запроса на добавление показан на рис. 6.9.
Рис. 6.9.Результирующий бланк запроса на добавление
Текст запроса на добавление приведен в листинге 6.4.
...
Листинг 6.4.
Запрос на добавление данных
INSERT INTO Заказы (Товар, Сумма, Количество, Клиент, Дата)
SELECT Товары. Код, Товары. Цена, 1 AS Выражение1, 3 AS Выражение2,
Date() AS Выражение3
FROM Товары;
5. Нажмите кнопку Выполнить. Откроется окно подтверждения операции добавления.
6. Нажмите кнопку Да.
7. Откройте таблицу Заказы.
Вы можете видеть, что в таблице Заказыпоявились шесть новых записей по количеству товаров в таблице Товары(рис. 6.10).
Рис. 6.10.Таблица Заказы после выполнения запроса на добавление записей
...
Примечание
Следует помнить, что типы данных, заданные для полей в исходной таблице, должны быть совместимыми с типами данных для полей конечной таблицы. Например, можно добавить числа в текстовое поле, но нельзя добавить текст в числовое поле, если только не используется выражение вида (Val(ТекстовоеПоле)), чтобы сначала преобразовать данные в числовой тип данных.
Создание запросов на обновление таблиц
Запрос на обновление данных используется для изменения существующих записей в таблицах. Основное отличие таких запросов от запросов на добавление и удаление – это то, что изменяются значения отдельных полей записей. Можно удалять значения полей, оставляя те пустыми, при этом операция будет равносильна удалению части записи. Кроме того, можно заполнять пустые значения отдельных полей данными, что равносильно добавлению данных. Но если необходимо добавить или удалить строки целиком, необходимо использовать запросы на добавление или удаление записей соответственно.
Обновлять данные можно не во всех полях. Ниже приводится список полей, значения которых нельзя изменить запросом на обновление:
• поля, содержащие результаты вычислений, потому что их значения не хранятся в базе данных постоянно;
• поля, источником записей для которых служат итоговые запросы или перекрестные запросы, которые будут рассмотрены далее в этой главе;
• поля-счетчики, потому что их значение изменяется только при добавлении записей в таблицу;
• поля в запросах на объединение, так как эти данные не хранятся в базе, а выбираются из указанных таблиц;
• поля в запросах на уникальные значения и запросах на уникальные записи – запросах, возвращающих неповторяющиеся значения или записи;
• первичные ключи, участвующие в отношениях между таблицами, кроме тех случаев, когда эти отношения были настроены на автоматическое выполнение каскадного обновления через поля ключа и любые связанные поля.
...
Внимание!
Перед выполнением запроса на обновление следует создать резервную копию базы данных. Результаты запроса на обновление невозможно отменить, однако создание резервной копии позволяет отменить все изменения.
Для надежности сначала следует создать запрос на выборку, просмотреть, какие записи будут изменены, а потом преобразовать запрос в запрос на обновление.
Создайте запрос на обновление данных в учебной базе Отдел продаж. Итак, имеется таблица с заказами, в которой указывается полная стоимость заказа. Пусть при заказе на сумму более 5000 руб. клиент получает скидку в 10 %. Сначала создайте запрос на выборку нужных записей из таблицы Заказы.
1. Откройте базу данных Отдел продаж.
2. На вкладке Созданиев группе Другиенажмите кнопку Конструктор запросов.
Читать дальше
Конец ознакомительного отрывка
Купить книгу