Как составить запрос с параметром

Чтобы настроить в запросе к базе данных рабочего стола Access ввод условий при его выполнении, создайте запрос с параметрами. Это даст возможность использовать запрос повторно, не открывая его в Конструктор для изменения условий.

Примечание: Эта статья не относится к веб-приложениям Access.

Терминология

Прежде чем перейти к описанной ниже пошаговой процедуре, полезно ознакомиться с несколькими терминами.

  • Параметр.   Параметр — это часть сведений, предоставляемых запросу при его выполнении. Параметры можно использовать отдельно или в составе длинных выражений для формирования условия запроса. Параметры можно добавить в запрос любого из следующих типов:

    • на выборку;

    • перекрестный;

    • на добавление;

    • на создание таблицы;

    • на обновление.

  • Условия.   
    Условия — это “фильтры”, добавляемые в запрос для указания элементов, которые он должен возвратить.

Дополнительные сведения об указанных выше типах запросов см. в статье Знакомство с запросами.

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

Создание параметра аналогично добавлению обычного условия в запрос:

  1. Создайте запрос на выборку и откройте его в конструкторе.

  2. В строке “Условия” поля, к которым вы хотите применить параметр, введите текст, который вы хотите отобразить в поле параметра, в квадратных скобках. Например: [Введите дату начала:]

    Простой запрос с параметрами.

  3. Повторите шаг 2 для каждого поля, в которое необходимо добавить параметры.

При запуске запроса текст отображается без квадратных скобок.

Запрос параметра с текстом "Введите начальную дату"

Введите нужное значение и нажмите кнопку ОК.

В условии можно использовать несколько параметров. Например, выражение Between [Введите дату начала:] And [Введите дату окончания:] при выполнении запроса создаст два поля.

Запрос с двумя параметрами.

Указание типов данных для параметра

Можно настроить параметр так, чтобы он принимал только определенный тип данных. Это особенно важно для числовых и денежных данных, а также данных даты и времени, так как в таком случае пользователи получат более содержательное сообщение об ошибке при вводе неправильного типа данных, например при вводе текста вместо денежного значения.

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

Чтобы задать тип данных для параметра в запросе, выполните указанные ниже действия.

  1. Когда запрос открыт в конструкторе, на вкладке Конструктор в группе Показать или скрыть нажмите кнопку Параметры.

  2. В диалоговом окне Параметры запроса в столбце Параметр введите текст запроса на ввод каждого из параметров, для которых требуется указать тип данных. Проверьте, соответствуют ли параметры запросам на ввод, указанным в строке Условия в бланке запроса.

  3. В столбце Тип данных выберите тип данных для каждого параметра.

Добавление параметра в запрос на объединение

Так как запрос на объединение нельзя просмотреть в бланке запроса, действия с ним будут немного отличаться.

  1. Откройте запрос на объединение в режиме SQL.

  2. Добавьте к нему предложение WHERE, содержащее поля, в которые нужно добавить параметры.

    Если предложение WHERE уже существует, проверьте, включены ли в него все поля, в которые нужно добавить параметры. Если нет, добавьте недостающие поля.

  3. Введите запрос параметра в предложение WHERE, например WHERE [StartDate] = [Введите дату начала:].

    Запрос на объединение из двух частей со следующим предложением в обеих частях: WHERE StartDate = [Введите дату начала:]

    Имейте в виду, что во все разделы запроса необходимо добавить одинаковые фильтры. На рисунке выше запрос содержит два раздела (разделенные ключевым словом UNION), поэтому параметр нужно добавить дважды. Но при выполнении запроса ввод данных запрашивается только один раз (предполагается, что во всех разделах указан одинаковый запрос).

Дополнительные сведения о запросах на объединение см. в статье Использование запроса на объединение для просмотра объединенных результатов нескольких запросов.

Объединение параметров с помощью подстановочных знаков для большей гибкости

Как и в случае обычных условий, вы можете объединить параметры с помощью ключевого слова Like и подстановочных знаков для поиска соответствий в более широком диапазоне элементов. Предположим, что нужно запросить страну или регион и при этом сопоставить их со значениями, которые содержат строку параметра. Для этого выполните указанные ниже действия.

  1. Создайте запрос на выборку и откройте его в конструкторе.

  2. В строке Условия поля, в которое нужно добавить параметр, введите Like “*”&[, текст сообщения, а затем ]&”*”.

    Бланк запроса со следующим условием в столбце "СтранаРегион": Like "*" & [Введите страну или регион:] & "*"

При запуске запроса с параметрами запрос появляется в диалоговом окне без квадратных скобок и без ключевого слова Like или
поддиаметров:
Запрос параметра с текстом "Введите страну или регион".

После ввода параметра запрос возвратит значения, содержащие строку параметра. Например, строка параметра us возвратит элементы, в которых поле параметра имеет значение “Австралия” или “Австрия”.

Дополнительные сведения о подстановочных знаках см. в статье Использование подстановочных знаков в качестве условий.

Возврат элементов, не соответствующих параметру

Вместо возврата элементов, соответствующих параметру, можно создать запрос, возвращающий элементы, которые ему не соответствуют. Например, может потребоваться запросить год и возвратить элементы со значением года, большим чем указанное. Для этого введите оператор сравнения слева от запроса параметра в квадратных скобках, например >[Введите год:].

Видео: использование параметров в запросах

Использовать в запросе параметр не сложнее, чем создать запрос на основе условий. Запрос можно настроить таким образом, чтобы предлагалось ввести определенное значение, такое как артикул товара, или несколько значений, например две даты. Для каждого параметра запрос выводит отдельное диалоговое окно, в котором предлагается ввести значение.

В этом видео подробнее рассказывается о создании параметров в запросах.

Браузер не поддерживает видео.

Запрос в Access
является объектом, который сохраняется
в файле базы данных и может многократно
повторяться. Все запросы, которые мы
демонстрировали до сих пор, содержали
конкретные значения дат, названий, имен
и т. д. Если требуется повторить такой
запрос с другими значениями в условиях
отбора, его нужно открыть в режиме
Конструктора, изменить условие и
выполнить. Чтобы не делать многократно
этих операций, можно создать запрос с
параметрами. При выполнении такого
запроса выдается диалоговое окно Введите
значение параметра
(Enter Parameter Value), в
котором пользователь может ввести
конкретное значение и затем получить
нужный результат.

Покажем, как
создавать запросы с параметрами на
примере запроса “Отсортированный
список товаров”, который мы создавали
ранее. Теперь мы с помощью этого запроса
попробуем отобрать товары, поставляемые
определенным поставщиком. Для этого:

  1. Откройте данный запрос в режиме
    Конструктора.

  2. Чтобы определить параметр запроса,
    введите в строку Условие отбора
    (Criteria) для столбца “Название”
    (CompanyName) вместо конкретного значения
    слово или фразу и заключите их в
    квадратные скобки, например [Поставщик:].
    Эта фраза будет выдаваться в виде
    приглашения в диалоговом окне при
    выполнении запроса.

  3. Если вы хотите, чтобы Access проверяла
    данные, вводимые в качестве параметра
    запроса, нужно указать тип данных для
    этого параметра. Обычно в этом нет
    необходимости при работе с текстовыми
    полями, т.к. по умолчанию параметру
    присваивается тип данных Текстовый
    (Text). Если же данные в поле запроса
    представляют собой даты или числа,
    рекомендуется тип данных для параметра
    определять. Для этого щелкните правой
    кнопкой мыши на свободном поле в верхней
    части запроса и выберите из контекстного
    меню команду Параметры (Parameters) или
    выполните команду меню Запрос,
    Параметры
    (Query, Parameters). Появляется
    диалоговое окно Параметры запроса
    (Query Parameters), представленное на рис.
    4.31.

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

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

  2. Нажмите кнопку
    Запуск (Run)
    на панели инструментов, чтобы выполнить
    запрос. При выполнении запроса появляется
    диалоговое окно Введите
    значение параметра
    (Input
    Parameter Value) (рис. 4.32), в которое нужно ввести
    значение, например Tokyo Traders. Результат
    выполнения запроса представлен на рис.
    4.33. В него попадают только те товары,
    которые поставляются данным поставщиком.

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

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

  • Запрос с параметром — это запрос, при выполнении отображающий в собственном диалоговом окне приглашение ввести данные, например условие для возвращения записей или значение, которое требуется вставить в поле.

  • Можно разработать запрос, выводящий приглашение на ввод нескольких единиц данных, например двух дат. Затем Microsoft Access может вернуть все записи, приходящиеся на интервал времени между этими датами.

    Пример

    1. Создайте запрос в режиме Конструктора на основе таблицы «Töötaja» (поля: Nimi, Perekonnanimi) и таблицы «Amet» ( поле: Nimetus).
    2. Чтобы определить параметр запроса, введите в строку Criteria (Условие отбора) для столбца «Amet» (должность) вместо конкретного значения слово или фразу и заключите их в квадратные скобки, например [Sisesta amet] Введи должность. Эта фраза будет выдаваться в виде приглашения в диалоговом окне при выполнении запроса.

    queryparametr

    3. Если вы хотите, чтобы Access проверяла данные, вводимые в качестве параметра запроса, нужно указать тип данных для этого параметра. Обычно в этом нет необходимости при работе с текстовыми полями, т.к. по умолчанию параметру присваивается тип данных Текстовый (Text). Если же данные в поле запроса представляют собой даты или числа, рекомендуется тип данных для параметра определять. Для этого щелкните правой кнопкой мыши на свободном поле в верхней части запроса и выберите кнопку parametrs
    (Параметры) Появляется диалоговое окно Query Parameters (Параметры запроса).

    queryparametrs1

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

    5. Нажмите кнопку run(Запуск), чтобы выполнить запрос. При выполнении запроса появляется диалоговое окно Введите значение параметра (Enter Parameter Value),

    parametrvalue

    в которое нужно ввести значение, например õpetaja. В результате выполнения запроса мы увидем только те имена и фамилии, чья должность — учитель.

    queryparametrsvalmis

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

Как создать запрос с параметром

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

Как создать запрос с параметром

Вам понадобится

  • – компьютер с установленным пакетом программ Microsoft Office;
  • – навыки работы с программой Microsoft Access.

Инструкция

Запустите программу Microsoft Access, чтобы создать параметрический запрос. Данный запрос создается на основе любого поля таблицы, для которой пользователь в дальнейшем вводит конкретное значение.

Перейдите в окно базы данных, во вкладку «Запросы». Для создания параметрического запроса нажмите кнопку «Создать» и выберите пункт «В режиме конструктора». На экране появится бланк запроса и окно выбора таблиц и полей. Выберите поля из таблиц, которые вы хотите добавить в запрос. К примеру, у вас есть таблица «Клиенты» и вы хотите создать запрос для поиска клиента по фамилии директора. Для этого выделите таблицу «Клиенты», дважды щелкните по полю «Код клиента», «Название фирмы», «Фамилия директора». Закройте окно выбора полей. Перейдите в поле «Фамилия директора» в бланке запроса. Для того, чтобы создать параметрический запрос, в поле «Условие отбора» впишите следующее: [Введите фамилию клиента]. Именно этот текст будет высвечиваться пользователю, когда он запустит данный запрос, поэтому старайтесь делать его как можно более понятным.

Создайте запрос с несколькими параметрами, для этого сделайте новый запрос в Конструкторе, выберите необходимые поля из таблиц. хотите добавить. Например, выберите таблицу «Клиенты», из нее поле «Название фирмы», дальше выберите таблицу «Заказы» и из нее выберите поле «Дата заказа» и «Сумма заказа». Закройте окна выбора таблиц, перейдите в поле «Дата заказа». В условии отбора введите следующее:

Между [введите дату начала] и [введите дату окончания]

При выполнении такого запроса пользователю будет предложено ввести даты, между которыми нужно произвести поиск заказа.

Сделайте параметрический запрос с использованием оператора LIKE и символа *. Создайте запрос в режиме конструктора, выберите таблицу «Товары», в поле «Марка товара» в условие отбора введите выражение

LIKE “*” & [Введите продукты, содержащие выражение] & “*”

При запуске запроса на выполнение введите в поле запроса слово «соус», запрос выдаст вам все товары, где упоминается данное слово, например «томатный соус», «соевый соус».

Полезный совет

Используйте понятные имена в параметрических запросах, так как они будут выводиться пользователю на экран.

Войти на сайт

или

Забыли пароль?
Еще не зарегистрированы?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

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

Когда вы запускаете параметрический запрос, условие поиска действует как переменный критерий, т. Е. Критерии запроса меняются каждый раз, когда вы запускаете запрос. Например, предположим, что у вас есть пекарня и вы хотите создать запрос для быстрого поиска заказов, размещенных на определенную дату. Вы можете создать запрос параметров с переменными критериями в поле Дата. Таким образом, каждый раз, когда вы запускаете запрос, будет появляться диалоговое окно, предлагающее вам ввести дату, когда вы хотите, чтобы поисковый запрос был.

Рисунок 1: Создание запросов с параметрами в Access 2016.

Просто введите желаемую дату, и MS Access выполнит запрос с датой, которую вы ввели в качестве этого условия поиска.

Как создавать и запускать запросы с параметрами

1. Создайте запрос как обычно, при необходимости измените параметры в таблице, выберите поля для включения в запрос и добавьте любые неизмененные критерии в соответствующие поля в строке Критерии:.

2. Найдите поле или поля, в которых должны отображаться критерии, затем выберите строку Критерии :.

3. Введите фразу, которая должна отображаться в подсказке, которая будет появляться каждый раз при запуске вашего запроса. Обязательно заключите фразу в квадратные скобки [] . Например, в запросе параметров в этом примере автор хочет найти заказы, размещенные на определенную дату, вы можете ввести следующие критерии: [What Date?].

4. На вкладке «Дизайн» щелкните команду «Выполнить», чтобы выполнить запрос. Появится диалоговое окно с указанным запросом. Введите поисковый запрос и нажмите OK, чтобы увидеть результаты запроса.

Рисунок 2: Создание запросов с параметрами в Access 2016.

Вы можете просто открыть существующий запрос параметров, чтобы запустить его.

Советы по написанию запросов с параметрами

В идеале подсказка, которую вы создаете для своего запроса, должна уточнить тип информации о поисковом запросе, а также желаемый формат. Например, чтобы убедиться, что пользователь выполняет поиск даты в формате, используемом в вашей базе данных, вы можете записать следующую информацию в строке Criteria: поля Pickup Date следующим образом: [What Date? (mm / dd / yyyy)] .

Рисунок 3: Создание запросов с параметрами в Access 2016.

Самый простой запрос параметров предоставит вам точные критерии соответствия, а это означает, что запрос будет искать точный текст, который вы ввели в подсказке. Однако вы можете превратить любой тип критерия в переменный критерий. Просто введите нужный текст в скобках в разделе критериев, куда вы обычно помещаете поисковую фразу.

Например, в обычном запросе вы можете найти заказы, размещенные между двумя датами, используя критерии «Между x и y», а затем заменить x и y, соответствующие дате начала и дате окончания. Чтобы превратить это в критерий параметра, вам просто нужно заменить x и y текстом, который вы хотите отобразить в приглашении. Ваши переменные критерии могут выглядеть следующим образом: Между [Enter the start date:] А также [Enter the end date:] . Эти два приглашения появятся при запуске запроса.

Рисунок 4: Создание запросов с параметрами в Access 2016.

Узнать больше:

  1. Параметры для создания запросов к данным в Access 2016
  2. Создавайте запросы к данным в Access 2016 от простого к сложному
  3. Введение в таблицы, запросы, формы, отчеты в Access

Добавить комментарий