Создание запроса с параметрами для оценки сложных условий в Access

Исходный номер базы знаний: 290178

Примечание.

Эта статья относится только к базе данных Microsoft Access (.mdb или .accdb). Требуются базовые навыки работы с кодом, макросами и взаимодействия.

Сводка

В Microsoft Access можно использовать переменные параметры в запросах. В этой статье описывается создание запроса, требующего нескольких запросов. Каждый параметр можно использовать как в качестве условия, так и в качестве поля, чтобы обеспечить сложную оценку значения, введенного в каждом параметре.

Дополнительные сведения

Предостережение

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

Следующий запрос параметров основан на таблице Orders в примере Northwind.mdb базы данных. Он выбирает заказы, написанные между двумя датами, предоставленными пользователем.

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

  1. Откройте пример Northwind.mdb базы данных.

  2. Создайте новый запрос, основанный на таблице Orders.

  3. Введите следующий запрос:

    Query: FindOrdersByDate
    ------------------------------------------------
    Type: Select Query
    
    Field: OrderID
    Show: Yes
    
    Field: OrderDate
    Sort: Ascending
    Show: Yes
    First Criteria Line: Between [Start Date] and [End Date]
    Second Criteria Line: <=[End Date]
    Third Criteria Line: >=[Start Date]
    
    Field: [Start Date]
    Show: No
    First Criteria Line: Is Not Null
    Second Criteria Line: Is Null
    Third Criteria Line: Is Not Null
    Fourth Criteria Line: Is Null
    
    Field: [End Date]
    Show: No
    First Criteria Line: Is Not Null
    Second Criteria Line: Is Not Null
    Third Criteria Line: Is Null
    Fourth Criteria Line: Is Null
    
  4. В Microsoft Office Access 2003 или Microsoft Access 2002 в меню Запрос выберите пункт Параметры. В Microsoft Office Access 2007 откройте вкладку Конструктор , а затем выберите Параметры в группе Показать и скрыть . В диалоговом окне Параметры запроса добавьте две записи, по одной для каждого параметра в запросе, как показано ниже.

    Query Parameters
    -----------------------
    Parameter: Start Date
    Data Type: Date/Time
    
    Parameter: End Date
    Data Type: Date/Time
    
  5. В Access 2003 или Access 2002 щелкните Таблица в меню Вид , чтобы выполнить запрос. В Access 2007 перейдите на вкладку Конструктор , а затем щелкните Представление таблицы в списке Вид в группе Результаты , чтобы выполнить запрос.

    Примечание.

    При доступе появится запрос на ввод значения параметров. Затем Access подставляет правильные значения в запросе.