Щоб запит у базах даних Access запитав умови під час його виконання, створіть параметризований запит. Це дасть змогу постійно використовувати той самий запит, не відкриваючи його щоразу в режимі конструктора, щоб змінювати умови.
Тлумачення термінів
Перш ніж перейти до покрокових інструкцій нижче, розгляньмо такі терміни:
-
Параметр. Параметр – це інформація, яка передається запиту, коли він запускається. Параметри можна використовувати окремо або в більшому виразі, щоб створити умову в запиті. Параметри можна додавати до будь-яких запитів таких типів:
-
вибірковий;
-
перехресний;
-
на додавання;
-
на створення таблиці;
-
на оновлення.
-
-
Умови. Умови – це "фільтри", які додаються до запиту, щоб указати, які елементи потрібно повертати, коли він виконуватиметься.
Докладні відомості про перелічені вище типи запитів див. в статті Основні відомості про запити.
Створення параметризованого запиту
Процес створення параметризованого запиту схожий на процес додавання звичайної умови до запиту.
-
Створіть вибірковий запит, а потім відкрийте його в режимі конструктора.
-
У рядку Критерії для поля, до якого потрібно застосувати параметр, введіть у квадратних дужках текст, який має відображатись у вікні параметра. Наприклад, [Введіть дату початку:].
-
Повторіть крок 2 для кожного поля, до якого потрібно додати параметри.
Під час виконання запиту текст повідомлення відображатиметься без квадратних дужок.
Введіть потрібне значення й натисніть кнопку OK.
В одній умові можна використовувати кілька параметрів. Наприклад, коли виконуватиметься запит Between [Введіть дату початку:] And [Введіть дату завершення:], відобразяться дві підказки.
Визначення типів даних для параметра
Параметр можна настроїти так, щоб приймати лише певний тип даних. Дуже важливо встановити тип даних для чисел, грошових одиниць або дати й часу, тому що тоді відображатиметься повідомлення про помилку в разі введення неправильного типу даних, наприклад тексту замість очікуваного значення грошової одиниці.
Примітка.: Якщо для параметра визначено текстовий тип даних, будь-які введені дані розцінюватимуться як текст і повідомлення про помилку не відображатиметься.
Ось як указати в запиті тип даних для параметрів.
-
Відкривши запит у режимі конструктора, на вкладці Конструктор запитів у групі Відобразити або приховати натисніть кнопку Параметри.
-
У вікні Параметри запиту в стовпці Параметр введіть текст повідомлення для кожного параметра, для якого потрібно вказати тип даних. Переконайтеся, що кожен параметр відповідає повідомленню, введеному в рядку Критерії сітки макета запиту.
-
У стовпці Тип даних виберіть для кожного параметра тип даних.
Додавання параметра до запиту на об’єднання
Оскільки переглянути запит на об’єднання у сітці макета запиту не можна, потрібно виконати інші дії.
-
Відкрийте запит на об’єднання в режимі SQL.
-
Введіть речення WHERE з полями, до яких потрібно додати параметри.
Якщо речення WHERE вже є, перевірте, чи є в ньому поля, до яких потрібно додати параметри. Якщо ні, додайте їх.
-
Введіть підказку параметра в речення WHERE, наприклад WHERE [StartDate] = [Введіть дату початку:]
Зверніть увагу, що потрібно додати однаковий фільтр для кожного розділу запиту. На зображенні вище запит має два розділи (розділені ключовим словом UNION), тому параметр потрібно додати двічі. Однак коли запустити запит, підказка відображається лише один раз (якщо її текст написано абсолютно однаково в кожному розділі).
Докладні відомості про запити на об'єднання див. в статті Використання запиту на об'єднання для об'єднання кількох запитів в один результат.
Поєднання параметрів із символами узагальнення для більшої гнучкості
Як і у випадку зі звичайними умовами, параметри можна поєднувати з ключовим словом Like і символами узагальнення, щоб досягти відповідності більшій кількості елементів. Наприклад, може знадобитися, щоб для запиту потрібно було вказати країну або регіон походження та щоб поверталися всі значення, які містять рядок параметра. Ось як це зробити:
-
Створіть вибірковий запит, а потім відкрийте його в режимі конструктора.
-
У рядку Критерії для поля, до якого потрібно додати параметр, введіть Like "*"&[, текст підказки, а потім ]&"*".
Коли ви виконуєте параметризований запит, запит відображається в діалоговому вікні без квадратних дужок і без ключового слова Like або символів узагальнення:
Коли параметр введено, запит повертає значення, які містять рядок параметра. Наприклад, якщо ввести рядок параметра ук, буде повернуто елементи, де поле параметра має значення "Острови Кука" або "Україна".
Докладні відомості про символи узагальнення див. в статті Приклади символів узагальнення.
Повернення елементів, які не збігаються з параметром
Інколи потрібно, щоб запит повертав елементи, які не збігаються з параметром. Наприклад, може знадобитися, щоб запит повернув елементи зі значенням року, більшим за введене. Для цього введіть оператор порівняння ліворуч від першої квадратної дужки, яка передує підказці параметра, наприклад >[Введіть рік:].
Відео: використання параметрів у запитах
Використовувати параметр у запиті так само легко, як і створити запит, у якому використовуються умови. Ви можете створити запит, щоб отримати одну частину інформації, наприклад номер частини, або кілька фрагментів інформації, наприклад дві дати. Для кожного параметра параметризований запит відображає окреме діалогове вікно, у якому пропонується ввести значення для цього параметра.
Перегляньте це відео, щоб дізнатися більше про створення параметрів у запитах.