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

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

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

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

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

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

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

  4. Если пакет еще не включает задачу Execute SQL, добавьте его в поток управления пакета. Дополнительные сведения см. в разделе "Добавление или удаление задачи" или "Контейнер" в потоке управления
    .

  5. Дважды щелкните задачу Execute SQL.

  6. Предоставьте параметризованную команду SQL одним из следующих способов:

    • Используйте прямые входные данные и введите команду SQL в свойстве SQLStatement.

    • Используйте прямые входные данные, нажмите кнопку "Создать запрос", а затем создайте команду SQL с помощью графических средств, которые предоставляет построитель запросов.

    • Используйте подключение к файлу, а затем наведите ссылку на файл, содержащий команду SQL.

    • Используйте переменную, а затем обратитесь к переменной, содержащей команду SQL.

    Маркеры параметров, используемые в параметризованных инструкциях SQL, зависят от типа подключения, используемого задачей Execute SQL.

    Тип подключения Маркер параметров
    АДО ?
    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 < ?
    АДО SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
    ADO.NET SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID

    Примеры использования параметров с хранимыми процедурами см. в разделе "Параметры" и "Коды возврата" в задаче "Выполнение SQL".

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

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

  9. Укажите имя в поле "Имя параметра ".

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

    Тип подключения Имя параметра
    АДО Param1, Param2, ...
    ADO.NET и SQLMOBILE @<имя параметра>
    ODBC (Интерфейс открытой базы данных) 1, 2, 3, ...
    EXCEL и OLE DB 0, 1, 2, 3, ...
  10. В списке имен переменной выберите переменную. Дополнительные сведения см. в разделе "Добавление", "Удаление", "Изменение области" переменной User-Defined в пакете.

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

  12. В списке типов данных задайте тип данных параметра.

    Это важно

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

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

    Это важно

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

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

См. также

Выполнение задачи SQL
Параметры и коды возвращаемых данных в задаче «Выполнение SQL»
Переменные служб Integration Services (SSIS)