Запит на оновлення access - бази даних access

Сьогодні поговоримо на тему «Запит на оновлення Access». Запит на оновлення Access може бути використаний для поновлення даних в полях базових таблиць. Зміни вносяться в групу записів, що відбираються за допомогою вказаних користувачем умов відбору. Значення для змін в полях визначаються в бланку запиту в рядку Оновлення (Update To).
Завдання. Розрахуйте вартість товару в кожному рядку таблиці Відвантаження та збережіть її в поле СУММА_ОТГР цієї ж таблиці.

  1. Для формування запиту на оновлення спочатку створіть запит Вибірка (Select) на основі двох таблиць: оновлюваної таблиці Відвантаження та таблиці ТОВАР.
  2. Перетворіть запит на вибірку в запит на оновлення, клацнувши на кнопці Оновлення (Update), розміщеної на вкладці стрічки Конструктор (Design) або вибравши команду Оновлення (Update) зі списку Тип запиту (Query Type) в контекстному меню запиту. Після виконання цієї команди в бланку запиту з'являється рядок Оновлення (Update To) (рис. 4.43).
  3. Заповніть бланк запиту. Перетягніть оновлюється поле СУММА_ОТГР зі списку таблиці Відвантаження в рядок Поле (Field). У рядок Оновлення (Update To) введіть вираз [ЦІНА] * [КОЛ_ОТГР], яке розраховує значення для поновлення.

Запит на оновлення access - бази даних access

Таким чином, розглянутий запит дозволяє автоматизувати розрахунок вартості товару, вказаного в кожному рядку специфікації накладної - записи таблиці Відвантаження.

  1. Якщо оновлювати потрібно тільки деякі рядки таблиці, задайте умови відбору оновлюваних записів. Для цього доповніть бланк запиту полем, по якому потрібно зробити відбір записів. Перетягніть поле КОД_ТОВ в бланк запиту і введіть в рядок Умови відбору (Criteria) параметр [Текст товару] (див. Рис. 4.43).
  2. Виконайте запит. Оновлення буде виконано тільки для записів з введенням кодом товару.
  3. Збережіть запит під ім'ям Розрахунок вартості.
  4. Перейдіть в режим SQL. Еквівалентна запитом на оновлення інструкція UPDATE буде записана наступним чином:
    UPDATE ТОВАР INNER JOIN Відвантаження ON ТОВАР.КОД_ТОВ = ОТГРУЗКА.КОД_ТОВ
    SET ОТГРУЗКА.СУММА_ОТГР = [Ціна] * [КОЛ_ОТГР] WHERE (((ТОВАР.КОД_ТОВ) = [Введіть код товару]));