- 论坛徽章:
- 0
|
HELP ! HELP!!
你要创建字段的表被锁住了,可能是该表上有事务未提交!
执行下面的sql找到是哪个session 锁住了该表,其TABLENAME室你要操作的那个表名的大写。
select a.session_id ,b.object_name from v$locked_object a ,dba_objects b where a.object_id=b.object_id and upper(b.object_name) like 'TABLENAME'
找到session_id 后在执行下面的sql,看看是那个用户、或者应用锁住了该表,解锁后在执行你的加字段的操作
SELECT s.status "Status", s.serial# "Serial#", s.TYPE "Type",
s.username "DB User", s.osuser "Client User",
s.machine "Machine", s.module "Module",
s.terminal "Terminal", s.program "rogram", p.program "O.S. Program",
s.logon_time "Connect Time", lockwait "Lock Wait",
p.spid, p.pid, si.SID,
SYSDATE - (s.last_call_et / 86400) "Last Call"
FROM v$session s, v$process p, SYS.v_$sess_io si
WHERE s.paddr = p.addr(+)
AND si.SID(+) = s.SID
AND (s.username IS NOT NULL)
AND (NVL (s.osuser, 'x') <>; 'SYSTEM')
AND (s.TYPE <>; 'BACKGROUND')
and si.SID=[session_id]
上面sql中的[session_id]是你第一条sql执行结果中的session_id |
|