今天修改项目功能,发现程序走到执行sql语句的时候就不走了,也不报错。没办法,直接去数据库服务器执行sql吧,发现一直在执行根本停不下来,百度得知执行了update或者insert语句后,都会要求提交事务,如果不提交却强制关闭连接,oracle就会将这条提交的记录锁住。留此博客,以此记录成长过程。
解决方案如下:
1、执行以下sql,查询锁定记录;
SELECT
s.sid, s.serial#
FROM
v$locked_object lo, dba_objects ao, v$session s
WHERE
ao.object_id = lo.object_id
AND
lo.session_id = s.sid;
2、使用DOS命令删除锁定(plsql只能查看不能删除);
①、在cmd窗口执行:sqlplus 数据库名/密码@数据库实例名
②、ALTER
system KILL session 'SID,serial#';(SID,serial#即第一步查出来的数据)
看到系统已更改,恭喜,成功了!