Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
применимо к:SQL Server
В некоторых случаях требуется создать запрос, который можно использовать несколько раз, но с разными значениями каждый раз. Например, можно часто запускать запрос, чтобы найти все title_ids, написанные одним автором. Вы можете выполнять один и тот же запрос для каждого запроса, за исключением того, что идентификатор или имя автора будет отличаться каждый раз.
Чтобы создать запрос, который может иметь разные значения в разное время, используйте параметры в запросе. Параметр — это заполнитель для значения, предоставленного при выполнении запроса. Инструкция SQL с параметром может выглядеть следующим образом: "?" представляет параметр для идентификатора автора:
SELECT title_id
FROM titleauthor
WHERE (au_id = ?)
Когда следует использовать параметры
Параметры можно использовать в качестве заполнителей для литеральных значений — для текстовых или числовых значений. Чаще всего параметры используются в качестве заполнителей в условиях поиска отдельных строк или групп (то есть в WHERE инструкциях SQL или HAVING предложениях).
Параметры можно использовать в качестве заполнителей в выражениях. Например, вы можете вычислить скидки по ценам, указав другое значение скидки при каждом запуске запроса. Для этого можно указать следующее выражение:
(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%
Совет
Перед созданием именованного запроса параметров необходимо определить префикс и суффикс.
При запуске запроса в конструкторе запросов и представлений откроется диалоговое окно "Параметры запроса" со списком именованных параметров.