Поделиться через


Запросы параметров (визуальные инструменты для баз данных)

применимо к:SQL Server

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

Чтобы создать запрос, который может иметь разные значения в разное время, используйте параметры в запросе. Параметр — это заполнитель для значения, предоставленного при выполнении запроса. Инструкция SQL с параметром может выглядеть следующим образом: "?" представляет параметр для идентификатора автора:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

Где можно использовать параметры

Параметры можно использовать в качестве заполнителей для литеральных значений — для текстовых или числовых значений. Чаще всего параметры используются в качестве заполнителей в условиях поиска для отдельных строк или групп (то есть в предложениях WHERE или HAVING инструкции SQL).

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

(price * ?)  

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

Можно указать два типа параметров: неназванные и именованные. Неименованный параметр — это вопросительный знак (?), который вы помещаете в любой точке запроса, который требуется запросить или заменить литеральным значением. Например, если вы используете неименованный параметр для поиска идентификатора автора в таблице titleauthor, результирующая инструкция в области SQL может выглядеть следующим образом:

SELECT title_id  
FROM titleauthor  
WHERE (au_id = ?)  

При запуске запроса в конструкторе запросов и представленийпоявится диалоговое окно "Параметры запроса" с "?" в качестве имени параметра.

Кроме того, можно назначить имя параметру. Именованные параметры особенно полезны при наличии нескольких параметров в запросе. Например, если вы используете именованные параметры для поиска имени и фамилии автора в таблице authors, результирующий запрос в области SQL может выглядеть следующим образом:

SELECT au_id  
FROM authors  
WHERE au_fname = %first name% AND  
      au_lname = %last name%  

Совет

Перед созданием именованного запроса параметров необходимо определить префикс и суффикс.

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

См. также

запрос с параметрами (визуальные инструменты для баз данных)
поддерживаемые типы запросов (визуальные инструменты для баз данных)
Инструкции по запросам и представлениям проектирования (инструменты визуального проектирования баз данных)