将SSIS对象变量转换为String / Varchar(MAX),以将其作为参数传递给另一个存储过程

时间:2018-12-06 05:51:24

标签: ssis ssis-2012

SSIS中的一个执行SQL任务有一个SQL SELECT查询,该查询返回一个Varchar(MAX)值,而我用resultset as single row将其分配给SSIS字符串变量,引发了关于铸件。

所以我将SSIS变量类型更改为对象。

现在的问题是我还有另一个执行SQL任务,该任务使用此SSIS变量作为存储过程的参数,但类型为VARCHAR(MAX)。我该如何实现?

基本上,我试图将SSIS对象变量传递给Varchar(MAX)或String变量,以将其传递到另一个存储过程中。

2 个答案:

答案 0 :(得分:0)

将变量类型更改回字符串并使用:

CAST([YourColumn] AS varchar(8000)) AS [YourVariableResultName]

如果没有,请发布您在投射时遇到的错误

答案 1 :(得分:0)

已解决。将执行SQL任务结果集更改为全部结果集,并将其分配给一个对象变量。然后使用一个Foreach项目容器,将该对象变量设置为源,并将0索引值分配给一个字符串变量。然后将其传递给存储过程。谢谢大家的帮助。☺️