解决Oracle锁表情况

在使用Oracle数据库更新数据的时候,有两种查询方式可以修改编辑数据:

select t.*,t.rowid from table t
select * from table for update

在使用第二种方式的时候如果卡住或意外退出,会导致这个表锁住,之后无法被修改。

使用以下方法处理锁表

复制代码
--Oracle查询被锁对象数目
select count(1) from v$locked_object;
--查询被锁对象
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;
--查询被锁对象的连接
select t2.username,t2.sid,t2.serial,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time;
--关闭被锁对象连接,
alter system kill session '2537.49542'
posted @   lclc  阅读(116)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2021-02-23 ISO9126
2021-02-23 什么软件质量/如何评价软件的质量
2021-02-23 JDK各个版本发布时间和版本名称
2021-02-23 apache Directory Studio 简易使用
2021-02-23 懂了 OpenLDAP
2021-02-23 完整版的OpenLDAP搭建全过程
2021-02-23 LDAP安装配置(windows)
点击右上角即可分享
微信分享提示