首页 > 解决方案 > 当另一个连接已经使用同一个表时,Oracle 可以返回超时吗?

问题描述

如果我需要在一个数据库表中运行 DML(插入、更新、删除),首先他验证是否有使用该表的活动 DML。在这个时刻,如果有另一个操作,我的连接等待他完成。在这种情况下有办法让“超时”吗?不在全局模式下,仅针对特定情况。

--编辑问题的更多规范

不确定是否实际使用了任何类型的锁。但就我而言,Oracle Forms 中有一个旧应用程序和我编写的一个新应用程序。

问题是当用户打开特定记录以更新旧应用程序中的任何字段时,我尝试在我的应用程序中编辑相同的记录,该行被阻止。所以我的应用程序正在等待解锁。但问题是用户认为应用程序被冻结并杀死他,丢失了更改。但是,如果另一个 Oracle Forms 应用程序尝试进​​行编辑,则情况并非如此。如果这样做,Oracle Forms 会显示消息“无法保留记录 (2)。继续尝试?”。也许是因为这个旧应用程序使用了任何类型的锁。但我需要在代码中验证这一点。

Obs:数字 2 是尝试更新的次数。

标签: sqloracleoracle11gr2

解决方案



推荐阅读