与SSIS中的Temp表进行比较时更新主表时执行SQL任务时出错

时间:2012-05-17 10:59:44

标签: ssis

我已将匹配的行与查找分开,并通过 ODLEDB目的地将匹配的数据存储到临时表中。

完成数据流任务后, 执行SQL任务 会出现错误。

属性设置为
ResultSet: "NONE";
ConnectionType:"OLEDB";
Connection:"myDatabase";
SQLType: "Direct Input"

SQLStatement

Update dbo.[Payment_Transaction] 
SET pt.[Date] = tt.[Date], pt.[FromCurrency]=tt.FromCurrency], pt.[ToCurrency]=tt.[ToCurrency], pt.[TransRate]=tt.[TransRate], pt.[TransType] =tt.[TransType], pt.[TransAmount]=tt.[TransAmount] 
FROM dbo.[Payment_Transaction] pt INNER JOIN  [##temp_table] tt ON pt.[ID] = tt.[ID]

获取错误说出来  "Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly"

任何人都可以遮挡任何光线吗?

谢谢,

Jahid

1 个答案:

答案 0 :(得分:0)

嗨我猜是tmp表相关所以...... 尝试使用“在连接管理器上设置RetainSameConnection = TRUE并在使用临时表的所有任务上设置DelayValidation = TRUE。设置RetainSameConnection = TRUE可确保临时表在创建它的任务完成后不会消失。设置DelayValidation = TRUE确保任务在创建之前不会检查表是否存在。“

http://consultingblogs.emc.com/jamiethomson/archive/2006/11/19/SSIS_3A00_-Using-temporary-tables.aspx

干杯,马里奥