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


Сопоставление параметров запроса с переменными в задаче «Выполнение SQL»

Данный раздел описывает использование параметризованной инструкции SQL в задаче «Выполнение SQL» и создание сопоставлений между переменными и параметрами в инструкции SQL.

Дополнительные сведения о задаче «Выполнение SQL», маркерах параметров и именах параметров, используемых с различными типами соединений, см. в разделах Задача «Выполнение SQL» и Параметры и коды возврата в задаче «Выполнение SQL».

Сопоставление параметра запроса с переменной

  1. В среде SQL Server Data Tools (SSDT) откройте необходимый пакет служб Службы Integration Services.

  2. Чтобы открыть пакет, дважды щелкните его в обозревателе решений.

  3. Перейдите на вкладку Поток управления.

  4. Если пакет не включает задачу «Выполнение SQL», добавьте его к потоку управления пакета. Дополнительные сведения см. в разделе Добавление задачи или контейнера в поток управления или удалить их из него.

  5. Дважды щелкните задачу «Выполнение SQL».

  6. Введите параметризированную команду 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».

  7. Щелкните Сопоставление параметров.

  8. Чтобы добавить сопоставление параметров, нажмите кнопку Добавить.

  9. Введите имя в поле Имя параметра.

    Имена параметров зависят от типа соединения, используемого задачей «Выполнение SQL».

    Тип соединений

    Имя параметра

    ADO

    Param1, Param2, …

    ADO.NET и SQLMOBILE

    @<имя параметра>

    ODBC

    1, 2, 3, …

    EXCEL и OLE DB

    0, 1, 2, 3, …

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

  11. В списке Направление укажите, является ли параметр входом, выходом или возвращаемым значением.

  12. В списке Тип данных укажите тип данных параметра.

    Важное примечаниеВажно!

    Тип данных параметра должен быть совместим с типом данных переменной.

  13. Повторите шаги с 8 по 11 для каждого параметра инструкции SQL.

    Важное примечаниеВажно!

    Порядок сопоставления параметров должен соответствовать порядку, в котором параметры появляются в инструкции SQL.

  14. Нажмите кнопку ОК.

См. также

Основные понятия

Задача «Выполнение SQL»

Параметры и коды возврата в задаче «Выполнение SQL»

Переменные в службах Integration Services (SSIS)