【发布时间】:2012-03-02 10:53:07
【问题描述】:
我可以使用delete from table_name,它可以工作。
为什么不truncate?
【问题讨论】:
-
外键参考...你答案的后半部分...
标签: oracle parent-child truncate cascading-deletes
我可以使用delete from table_name,它可以工作。
为什么不truncate?
【问题讨论】:
标签: oracle parent-child truncate cascading-deletes
试试:
TRUNCATE TABLE <tablename>;
在禁用 FK 约束之后。
截断不能回滚,因为它是DDL rather than DML,所以要小心。 它还会重置被截断表的高水位标记。
有关 Oracle 文档的说明,请参阅 here。 和here 进行比较。
注意:您不能截断已启用外键约束的父表。您必须在截断表之前禁用约束。一个例外是,如果完整性约束是自引用的,您可以截断表。
希望对你有帮助...
【讨论】:
TRUNCATE 也重置身份列