3

当我执行删除存储过程时,我收到“ORA-01013:用户请求取消当前操作”。

而且从应用程序中抛出异常也需要时间(大约超过 10 秒)

当我在 Toad 中执行此查询时,它需要 30 多秒,当我取消它时,在输出窗口中,它显示上述错误。

我认为,数据访问博客在超时时会自动取消。

我想知道为什么需要30秒。当我单独运行选择查询时,没有记录。

当我只调用删除时,它需要时间。

DELETE FROM ( SELECT *
       FROM VoyageVesselBunkers a
       JOIN VoyageVessel b
       ON  a.VoyageVesselId = b.Id
       WHERE a.Id    = NVL(null,a.Id)
       AND  b.VoyageId   = NVL('5dd6a8fbb69d4969b27d01e6c6245094',b.VoyageId)
       AND  a.VoyageVesselId = NVL(null,a.VoyageVesselId) );

任何建议。阿南德

4

3 回答 3

5

如果您对位于 SQL 编辑器(例如 SQL Developer、Oracle 等)中的数据行进行了未提交的更改,并且您尝试通过另一个程序(可能是在诸如 Visual Studio 等 IDE 中运行的程序)更新同一行),你也会得到这个错误。要纠正这种可能的症状,只需在 SQL 编辑器中提交更改。

于 2015-06-01T16:06:08.157 回答
3

您的代码正在设置超时 ( storedProcCommand.CommandTimeout)。该错误表明存储过程调用所用的时间超过了允许的超时时间,因此将其取消。您要么需要增加(或删除)超时,要么需要解决导致过程调用超过允许超时的任何性能问题。

于 2012-08-23T06:18:06.740 回答
-3

ORA-01013 用户请求取消当前操作

原因:用户通过输入 CTRL-C、Control-C 或其他
取消操作中断了 Oracle 操作。这会强制结束当前操作。这只是一条信息性
消息。

行动:继续下一个操作。

于 2012-08-23T06:24:20.543 回答