------解决方案-------------------- 是不是 使用过 for udpate
------解决方案-------------------- 表的主键是不是CMS字段?这个表有没有外键?
你的语句是对的,有可能有外键约束的原来,不让更改
------解决方案-------------------- select * from v$session_wait where wait_class<>'Idle'; 贴出结果,看看是什么等待
------解决方案--------------------
自己打开两个不同的session修改数据,没有及时commit出现锁也很正常.出现死锁的一种情况是修改表的外键没有建立索引,楼主可看看你的表有没有参照表,如果有,参照表的外键有没有建立索引.
另外,看锁阻塞的方法是
SELECT (select username FROM v$session WHERE sid=a.sid) blocker, a.sid, 'is blocking', (select username FROM v$session WHERE sid=b.sid) blockee, b.sid FROM v$lock a, v$lock b WHERE a.block = 1 AND b.request > 0 AND a.id1 = b.id1 AND a.id2 = b.id2 /