【问题标题】:ORA-01013: user requested cancel of current operationORA-01013: 用户请求取消当前操作
【发布时间】:2017-07-21 00:05:44
【问题描述】:

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

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

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

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

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

当我调用 delete 时,它​​只需要时间。

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) );

任何建议。 和

【问题讨论】:

  • 我们可以看到代码和完整的错误吗?
  • 更新了代码并完全报错
  • 存储过程中是否总是同一行?能否请您显示存储过程的代码POSITIONCONSUMPTION_PK
  • 以上查询抛出错误。选择工作正常,只有删除触发错误。

标签: c# oracle11g


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

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

      操作:继续下一个操作。

      【讨论】:

      • 这只是复制和粘贴错误定义。这并不是 OPs 问题的真正答案。
      猜你喜欢
      • 1970-01-01
      • 2012-03-31
      • 1970-01-01
      • 2013-08-26
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 2021-05-29
      • 2012-10-08
      相关资源
      最近更新 更多