oracle 删除表时提示资源正忙

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 删除表时提示资源正忙相关的知识,希望对你有一定的参考价值。

删除表时提示ora_00054资源正忙错误,我用了以下语句查不出来被锁记录,无法删掉被锁进程,请问这个问题该怎么解决?
select p.spid,
c.object_name,
b.session_id,
b.oracle_username,
b.os_user_name,
b.locked_mode,
a.status,
a.logon_time,
a.state,
a.SID,
a.serial#
from v$process p, v$session a, v$locked_object b, all_objects c
where p.addr = a.paddr
and a.process = b.process
and c.object_id = b.object_id
and c.object_name = 'BQDW_BD_PSNDOC'

求高手,在线等

1、说明数据库正在使用中或者关联了其他表。
解决办法:停止使用该数据库表的相关服务。
2、truncate table tablename DROP STORAGE;
释义:删除表,并且释放存储空间。truncate的意思是清空表数据, “DROP STORAGE”是释放存储空间。
参考技术A 首先要解锁啊,然后才能删除追问

我都没查到被锁的记录哇。都没查到记录怎么解锁再删除。。

追答

select * from v$locked_object 里有记录吗

追问

有两条记录

追答

有你要删除的表吗?
还有你是不是有其他的窗口在修改这张表 没有提交

本回答被提问者和网友采纳
参考技术B 如果不是业务系统 就重启数据库断开所有连接 一般是哪个程序锁定了表或者记录

以上是关于oracle 删除表时提示资源正忙的主要内容,如果未能解决你的问题,请参考以下文章

oracle报错 ORA-00054 资源正忙

Oracle中修改表名遇到“ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效”

ORACLE:在 dbms_redefinition 后删除临时表时出错

Oracle 提示:ORA-00054: 资源正忙,要求指定 NOWAIT

oracle表删除后在plsql的左侧还是能看到

ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效