首先select * from ...for update no wait尝试锁定需要更新的纪录,然后再update
解决方案 »
- 新手请教关于动态SQL问题
- oracle中,使用游标得到查询记录数,同时返回得到的记录数
- HELP!SQL查询丢失几百万条数据的问题
- awrrpt.sql出现问题
- 麻烦大家帮我看看,关于UTL_FILE的使用问题
- 帮忙把一个sqlserver的存储过程(关于游标)改成oracle!
- 两个pl/sql问题 (初级)
- 请问insert into 可不可以插入多行呀
- 程序中的编码解码问题
- 急问:Oracle新建一个用户,要分配哪些权限跟它,才能在PB中用这个用户登陆数据库?
- execute immediate动态执行SQL,SQL字符串的长度是不是有限制?
- 请问怎样在LP/SQL DEVELOPER里面执行存储过程
或者你执行一下其他的操作比如删除表操作.就会报出....wait你可以执行下面这个sql来查询数据库锁.
SELECT S.SID SESSION_ID,s.MACHINE,s.SERIAL#,
S.USERNAME,
DECODE(LMODE,0,'None',
1,'Null',
2,'Row-S (SS)',
3,'Row-X (SX)',
4,'Share',
5,'S/Row-X (SSX)',
6,'Exclusive',
TO_CHAR(LMODE)) MODE_HELD,
DECODE(REQUEST, 0,'None',
1,'Null',
2,'Row-S (SS)',
3,'Row-X (SX)',
4,'Share',
5,'S/Row-X (SSX)',
6,'Exclusive',
TO_CHAR(REQUEST)) MODE_REQUESTED,
O.OWNER || '.' || O.OBJECT_NAME || ' (' || O.OBJECT_TYPE || ')',S.TYPE LOCK_TYPE,
L.ID1 LOCK_ID1,
L.ID2 LOCK_ID2
FROM V$LOCK L, SYS.DBA_OBJECTS O, V$SESSION S
WHERE L.SID = S.SID
AND L.ID1 = O.OBJECT_ID