数据流问题

Data flow issue

在 SSIS 包中尝试 运行 Sql 命令时出现错误。

Error:" No value given for one or more required parameters"

更多信息:

执行包中的Sql任务:

(常规选项卡) - 连接:ADO.NET - SQL 声明:exec storedprocedureX ?,?

(参数映射选项卡)

User::field1 , Input , String , 0 , -1
User::field2, Input, String, 1, -1

包中设置的变量

我错过了什么导致无法在数据流级别读取变量值?我在执行 SQL 任务级别没有问题。

数据流中的 OLE DB 命令与控制流中的执行 SQL 任务不同。您似乎正确描述了执行 SQL 任务。

要在数据流中使用变量,您需要将其添加到数据流中——最简单的方法是使用带表达式的派生列。在 OLE DB 命令之前将派生列添加到您的数据流中,并按如下方式配置:派生列名称:field1;派生列:添加为新列;表达式:@[User::field1]。然后在 OLE DB 命令中,在列映射下将列映射为输入列:field1;目标列:Param_0,等等