Сопоставление параметров запроса с переменными в задаче «Выполнение SQL»
Данный раздел описывает использование параметризованной инструкции SQL в задаче «Выполнение SQL» и создание сопоставлений между переменными и параметрами в инструкции SQL.
Дополнительные сведения о задаче «Выполнение SQL», маркерах параметров и именах параметров, используемых с различными типами соединений, см. в разделах Задача «Выполнение SQL» и Параметры и коды возврата в задаче «Выполнение SQL».
Сопоставление параметра запроса с переменной
В среде SQL Server Data Tools (SSDT) откройте необходимый пакет служб Службы Integration Services.
Чтобы открыть пакет, дважды щелкните его в обозревателе решений.
Перейдите на вкладку Поток управления.
Если пакет не включает задачу «Выполнение SQL», добавьте его к потоку управления пакета. Дополнительные сведения см. в разделе Добавление задачи или контейнера в поток управления или удалить их из него.
Дважды щелкните задачу «Выполнение SQL».
Введите параметризированную команду SQL одним из следующих способов.
Используйте прямой ввод и введите команду SQL в свойство SQLStatement.
Используйте прямой ввод, нажмите кнопку Создать запрос и создайте команду SQL, используя графические средства, предоставляемые построителем запросов.
Используйте подключение файла и укажите ссылку на файл, содержащий команду SQL.
Используйте переменную и укажите ссылку на переменную, содержащую команду SQL.
Маркеры параметров, которые используются в параметризованных инструкциях SQL, зависят от типа соединения, используемого задачей «Выполнение SQL».
Тип соединений
Маркер параметра
ADO
?
ADO.NET и SQLMOBILE
@<имя параметра>
ODBC
?
EXCEL и OLE DB
?
В следующей таблице приведен список примеров команды SELECT для разных типов диспетчеров соединений. Параметры предоставляют значения фильтра в предложениях WHERE. В примерах инструкции SELECT возвращают из таблицы Product базы данных AdventureWorks2012 продукты, для которых значение ProductID больше и меньше значений, указанных двумя параметрами.
Тип соединений
Синтаксис SELECT
EXCEL, ODBC и OLEDB
SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO
SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO.NET
SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID
Примеры использования параметров с хранимыми процедурами см. в разделе Параметры и коды возврата в задаче «Выполнение SQL».
Щелкните Сопоставление параметров.
Чтобы добавить сопоставление параметров, нажмите кнопку Добавить.
Введите имя в поле Имя параметра.
Имена параметров зависят от типа соединения, используемого задачей «Выполнение SQL».
Тип соединений
Имя параметра
ADO
Param1, Param2, …
ADO.NET и SQLMOBILE
@<имя параметра>
ODBC
1, 2, 3, …
EXCEL и OLE DB
0, 1, 2, 3, …
Выберите переменную из списка Имя переменной. Дополнительные сведения см. в разделе Добавление, удаление и изменение области определяемой пользователем переменной в пакете.
В списке Направление укажите, является ли параметр входом, выходом или возвращаемым значением.
В списке Тип данных укажите тип данных параметра.
Важно! Тип данных параметра должен быть совместим с типом данных переменной.
Повторите шаги с 8 по 11 для каждого параметра инструкции SQL.
Важно! Порядок сопоставления параметров должен соответствовать порядку, в котором параметры появляются в инструкции SQL.
Нажмите кнопку ОК.