sql - 当另一个连接已经使用同一个表时,Oracle 可以返回超时吗?
问题描述
如果我需要在一个数据库表中运行 DML(插入、更新、删除),首先他验证是否有使用该表的活动 DML。在这个时刻,如果有另一个操作,我的连接等待他完成。在这种情况下有办法让“超时”吗?不在全局模式下,仅针对特定情况。
--编辑问题的更多规范
不确定是否实际使用了任何类型的锁。但就我而言,Oracle Forms 中有一个旧应用程序和我编写的一个新应用程序。
问题是当用户打开特定记录以更新旧应用程序中的任何字段时,我尝试在我的应用程序中编辑相同的记录,该行被阻止。所以我的应用程序正在等待解锁。但问题是用户认为应用程序被冻结并杀死他,丢失了更改。但是,如果另一个 Oracle Forms 应用程序尝试进行编辑,则情况并非如此。如果这样做,Oracle Forms 会显示消息“无法保留记录 (2)。继续尝试?”。也许是因为这个旧应用程序使用了任何类型的锁。但我需要在代码中验证这一点。
Obs:数字 2 是尝试更新的次数。
解决方案
推荐阅读
- python - 提出一个简单的 Y/N 问题并根据答案返回值
- json - 从杰克逊的一个对象到另一个对象的深层属性副本?
- android - 如何在导航抽屉中添加两个按钮并在每个按钮上显示不同的菜单项
- r - 如何在 R 中进行连续子集化并在每一步绘制计数?
- django - Django:电子邮件作为 html 发送以重置密码
- android - 致命异常:java.lang.NoClassDefFoundError 解析失败:某些设备中的 Ljava/time/Month
- javascript - 为什么 JS 在 API 28 中执行,而不是在 webview 中的 23 中执行?
- javascript - 如何在外部访问 Babel 生成的类,例如在 HTML 源代码中?
- kubernetes - 外部 ip 要么挂起,要么分配的 ip 不工作
- performance - HBase - 快照性能