2012-02-27 86 views
1

我有一个表test,它在Oracle 11g中有25000行。我已经给出了Delete声明作为Follows。删除语句突然在Oracle11g中花费更多时间

delete from test; 

此查询运行超过5分钟,但仍未出来,也没有收到任何错误消息。有人能告诉我可能是什么问题吗?

+0

我可以使用'truncate'? – turbanoff 2012-02-27 07:38:17

+2

桌子上是否定义了触发器?有没有引用'TEST'的外键?如果您要删除表中的所有行,是否有一个原因导致您没有对表进行“TRUNCATE”操作而不是执行“DELETE”操作?你需要'DELETE'是事务性的吗? – 2012-02-27 07:40:49

+0

不!在该表上没有定义触发器。 – 2012-02-27 07:51:36

回答

3

尝试

delete from test nologging; 
+0

thx为您的回应。 – 2012-02-27 07:51:53

1

如果您正在使用delete没有一个过滤器,你最好使用truncate作为turbanoff说。同样根据我的经验,在某种脚本中使用delete from table会导致您遇到的症状。