尝试删除表时ORA-00054错误

时间:2015-09-12 12:33:05

标签: sql oracle

当我在oracle sql-developer上尝试这个命令时:

delete from my_table;

我收到以下错误:

  

ORA-00054:资源繁忙并使用NOWAIT指定获取

我还没弄明白如何解决这个问题。

2 个答案:

答案 0 :(得分:2)

某人或你自己(无意中)锁定了桌面。 查询表V$LOCKED_OBJECTS以查找用户名(您希望OS_USER_NAME)锁定它。

您可以要求用户解锁表格。他们必须提交/回滚他们的交易。如果他们无法这样做并允许你杀死他们的会话,你可以使用以下内容:

alter system kill session 'sid, serial#'

要杀死他们的会话,该会话锁定在您的桌子上{' sid' &安培; ' serial#'您必须通过查询v$sessionv$sqlarea表来查找。

这也可以在SQL开发人员中完成,您可以从菜单Tools --> Monitor Sessions中找到会话(如果您的用户可以访问元表) 右键单击正确的会话记录(非常重要)并选择标记为kill。一旦会话被杀死,您应该能够删除记录。

答案 1 :(得分:0)

检查数据库管理员。他们可以检查桌子上是否有任何事情发生。可能是有人在不同的会话中在桌子上表演。管理员可以终止会话。然后,您将能够删除/截断表格。