Запросы с параметрами

Запрос в Access является объектом, который сохраняется в файле базы данных и может многократно выполняться. Все запросы, рассмотренные ранее, содержали конкретные значения дат, названий, имён и т. д. Однако иногда требуется повторное выполнение запроса с разными значениями условий отбора. В таких случаях вместо изменения условия вручную можно использовать запрос с параметрами.

При выполнении запроса с параметрами Access выдаёт диалоговое окно Введите значение параметра (Enter Parameter Value), где пользователь вводит нужное значение. После этого запрос выполняется с указанным параметром.

Создание запроса с параметрами

Рассмотрим, как создать запрос с параметрами на примере запроса "Отсортированный список товаров". В этот раз мы попробуем отобрать товары, поставляемые определённым поставщиком.

  1. Откройте запрос в режиме Конструктора.
  2. В строке Условие отбора (Criteria) для столбца "Название" (CompanyName) вместо конкретного значения введите текст в квадратных скобках, например: [Введите название поставщика:]
    Этот текст будет отображаться в приглашении диалогового окна при выполнении запроса.

Определение типа данных параметра

По умолчанию Access воспринимает параметры как текстовые значения. Если параметр должен быть числовым или содержать дату, необходимо явно задать тип данных:

  1. Щёлкните правой кнопкой мыши в свободном поле верхней части окна запроса и выберите Параметры (Parameters).
  2. Либо выполните команду Запрос → Параметры (Query → Parameters).

Откроется диалоговое окно Параметры запроса (рис. 4.31).

Диалоговое окно Параметры запроса

Рис. 4.31. Диалоговое окно Параметры запроса

Настройка параметра

  1. В столбец Параметр (Parameter) введите название параметра точно так, как оно указано в бланке запроса.
  2. В столбце Тип данных (Data Type) выберите нужный тип данных.
  3. Нажмите ОК, чтобы сохранить параметры.

Выполнение запроса

  1. Нажмите кнопку Запуск (Run) на панели инструментов.
  2. При выполнении запроса появится окно Введите значение параметра (рис. 4.32).

Диалоговое окно Введите значение параметра

Рис. 4.32. Диалоговое окно Введите значение параметра

Введите, например, Tokyo Traders и нажмите ОК. Результатом выполнения запроса будет таблица, содержащая только товары этого поставщика (рис. 4.33).

Результат выполнения запроса с параметром

Рис. 4.33. Результат выполнения запроса с параметром

Использование нескольких параметров

Можно использовать несколько параметров в одном запросе. В этом случае Access последовательно выведет несколько диалоговых окон, предлагая ввести значения для каждого параметра.

Например, чтобы выбрать товары определённого поставщика с ценой выше заданного уровня, можно добавить второй параметр:

[Введите название поставщика:] AND [Введите минимальную цену:]

Использование шаблонов значений в параметрах

Если требуется вводить частичное совпадение, можно использовать оператор LIKE с параметром:

LIKE "*" & [Введите часть названия поставщика:] & "*"

Этот вариант позволит найти всех поставщиков, в названии которых встречается введённое слово.

Советы по работе с параметрами

Совет

Заключение

Запросы с параметрами позволяют делать фильтрацию данных более гибкой. Они упрощают работу пользователя, избавляя от необходимости вручную изменять запрос в режиме конструктора. Такие запросы особенно полезны в отчётах и формах, где требуется ввод динамических значений.