网站首页 > 文章中心 > 其它

oracle如何查行锁

作者:小编 更新时间:2023-09-02 11:02:14 浏览量:149人看过

ORACLE 可以查看表中的哪些行被锁定了吗

查看哪个表被锁

select b.owner,b.object_name,a.session_id,a.locked_mode

from v$locked_object a,dba_objects b

where b.object_id = a.object_id

查看是哪个session引起的

select b.username,b.sid,b.serial#,logon_time

from v$locked_object a,v$session b

where a.session_id = b.sid order by b.logon_time

ORACLE行锁问题

这种情况叫死锁,与网络质量无关.

最大的可能就是程序的原因.

如A进程修改a表的某条记录,修改完a表后,会继续修改b表的某条记录,然后提交事务.

这个时候,B进程在修改b表的那条记录,修改完后要去修改a表的那条记录,然后提交事务.

这样,当A修改完a尚未修改b,B修改完b尚未修改a的时候,就可能出现B进程等待A进程提交事务,A进程又在等待B进程提交事务,两个进程一直在等.

所以死锁就出现了.

oracle 19c查看锁表

①.、查看是否有被锁的表:select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id.

oracle查看当前系统有哪些锁

共享锁 独占锁,

行共享锁 ,行独占锁,表共享锁,表独占锁

oracle 行锁问题

①.、在sql语句后面加上for update可以获得行锁.

---

以上,希望对你有所帮助.

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章