如何在执行 SQL 任务中将查询参数映射到变量

此主题描述了如何在执行 SQL 任务中使用参数化 SQL 语句以及在 SQL 语句的变量和参数之间创建映射。

若要了解用于不同连接类型的执行 SQL 任务、参数标记和参数名称的详细信息,请参阅SSIS 执行 SQL 任务在执行 SQL 任务中使用参数和返回代码

将查询参数映射到变量

  1. 在 Business Intelligence Development Studio 中打开要处理的 Integration Services 包。

  2. 在解决方案资源管理器中,双击该包将其打开。

  3. 单击**“控制流”**选项卡。

  4. 如果该包尚未包括执行 SQL 任务,则向该包的控制流中添加一个此类任务。有关详细信息,请参阅如何在控制流中添加或删除任务或容器

  5. 双击执行 SQL 任务。

  6. 以下列方式之一提供参数化 SQL 命令:

    • SQLStatement 属性中使用直接输入并键入 SQL 命令。

    • 使用直接输入,单击**“生成查询”**,然后使用查询生成器提供的图形工具创建 SQL 命令。

    • 使用文件连接,然后引用包含该 SQL 命令的文件。

    • 使用变量,然后引用包含该 SQL 命令的变量。

    参数化 SQL 语句中使用的参数标记取决于执行 SQL 任务所使用的连接类型。

    连接类型

    参数标记

    ADO

    ?

    ADO.NET 和 SQLMOBILE

    @<参数名称>

    ODBC

    ?

    EXCEL 和 OLE DB

    ?

  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. 对 SQL 语句中的每个参数重复步骤 8 到 11。

    重要说明重要提示

    参数映射的顺序必须与参数在 SQL 语句中出现的顺序相同。

  14. 单击**“确定”**。