在SSIS执行SQL任务中更新到Oracle失败的语句

时间:2011-10-28 16:54:58

标签: sql-server oracle ssis

我必须执行从SSIS到Oracle的一些Update语句,我无法将其放入存储的Proc中。这个语句在Oracle中运行良好,但是从SSIS执行时出错。我正在使用具有SQL Source Type = Direct Input,BypassPrepare = True属性的执行SQL任务。执行任务时,它只会挂起20分钟左右。然后我点击停止调试。

UPDATE   Table1 R
  SET   R.Column1 =
           (SELECT   SUM (Column2)
              FROM   Table2 M

             WHERE                                
                  M.Column3 IS NULL AND M.Column4 = R.Column4)
WHERE   EXISTS (  SELECT   Column4 AS Column4
                    FROM   Table2 M

                   WHERE                          
                        M.Column3 IS NULL AND M.Column4 = R.Column4
                GROUP BY   Column4)   `

1 个答案:

答案 0 :(得分:2)

当我遇到这种情况时,那是因为我打开了一个交易。我一直在使用SQL Developer在测试期间重置目标表中的列值。 (默认情况下,SQL Developer不使用隐式事务。)

以下是详细信息:

SSIS PL/SQL task hangs with message “Multiple-step OLE DB operation generated errors.”