Oracle DBA培训网-中国Oracle培训领航专家

您当前的位置:优技培训(CUUG) > oracle技术 >

oracle 12c:新特性-截断表CASCADE

来源:优技培训(CUUG)

在之前的版本中,在子表引用一个主表以及子表存在记录的情况下,是不提供截断此主表操作的。而在12c中的带有CASCADE操作的TRUNCATE TABLE可以截断主表中的记录,并自动对子表进行递归截断,并作为DELETE ON CASCADE服从外键引用。由于这是应用到所有子表的,所以对递归层级的数量是没有CAP的,可以是孙子表或是重孙子表等等。

这一增强摈弃了要在截断一个主表之前先截断所有子表记录的前提。新的CASCADE语句同样也可以应用到表分区和子表分区等。

SQL> TRUNCATE TABLE CASCADE;

SQL> TRUNCATE TABLE PARTITION CASCADE;

如果对于子表的外键没有定义ON DELETE CASCADE 选项,便会抛出一个ORA-14705错误。

精华阅读