update 不能更新表
求助高手们一个问题 update 不能更新表表中只有 3 条记录,是一个测试表, 在更新的时候,偶尔能更新,偶尔就 update 不动了,就假死了,
有没有人遇到过跟我类似的问题.更新语句 执行的时候,就不动了,好象是 死掉一样.
update 表名 set CMS = 'dddddd' where FILENAME = 'ddddddddddddddd';
去 v$lock 表查询的时候,发现表死锁了,可奇怪的是,就我自己用这个表,怎么会出现这种情况,请高手们帮我分析分析,
在这里谢谢了.
求助高手们一个问题 update 不能更新表表中只有 3 条记录,是一个测试表, 在更新的时候,偶尔能更新,偶尔就 update 不动了,就假死了,
有没有人遇到过跟我类似的问题.更新语句 执行的时候,就不动了,好象是 死掉一样.
update 表名 set CMS = 'dddddd' where FILENAME = 'ddddddddddddddd';
去 v$lock 表查询的时候,发现表死锁了,可奇怪的是,就我自己用这个表,怎么会出现这种情况,请高手们帮我分析分析,
在这里谢谢了.
where wait_class<>'Idle';
贴出结果,看看是什么等待
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
/
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER
FILENAME NVARCHAR2(500)
CMS NVARCHAR2(500)只有一个主键ID,没有外键
这样执行的时候,就不动了,好象是 死掉一样.
update 表名 set CMS = 'dddddd' where FILENAME = 'ddddddddddddddd';
当我查询这个表是否被锁住时:
SQL> SELECT /*+ rule*/
2 a.sid, b.owner, object_name, object_type
3 FROM v$lock a, all_objects b
4 WHERE TYPE = 'TM'
5 and a.id1 = b.object_id; SID OWNER OBJECT_NAME OBJECT_TYPE
---------- ----------- ----------------- ----------------
75 PM LOG_UPLOAD TABLE发现这个表已经被锁住了,很奇怪,就我自己在操作这个表,怎么会这样?
你说卡住了,叫你看看等待视图是卡在哪里,你又不看。另外这个是等待,不是死锁。如果出现死锁,早就不卡了。