級(jí)聯(lián)truncate

12c之前的版本中,在子表引用一個(gè)主表以及子表存在記錄的情況下,是不提供截?cái)啻酥鞅聿僮鞯摹6?12c 中的帶有 CASCADE 操作的TRUNCATE TABLE 可以截?cái)嘀鞅碇械挠涗?,并自?dòng)對(duì)子表進(jìn)行遞歸截?cái)?,并作?DELETE ON CASCADE 服從外鍵引用。由于這是應(yīng)用到所有子表的,所以對(duì)遞歸層級(jí)的數(shù)量是沒(méi)有 CAP 的,可以是孫子表或是重孫子表等等。這一增強(qiáng)擯棄了要在截?cái)嘁粋€(gè)主表之前先截?cái)嗨凶颖碛涗浀那疤帷P碌?CASCADE 語(yǔ)句同樣也可以應(yīng)用到表分區(qū)和子表分區(qū)等。
SQL> create table parent(id number primary key);

創(chuàng)新互聯(lián)建站公司2013年成立,先為鶴城等服務(wù)建站,鶴城等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為鶴城企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

Table created.

SQL> create table child(cid number primary key,id number);

Table created.

SQL> insert into parent values(1);

1 row created.

SQL> insert into parent values(2);

1 row created.

SQL> insert into child values(1,1);

1 row created.

SQL> insert into child values(2,1);

1 row created.

SQL> insert into child values(3,2);

1 row created.

SQL> commit;

Commit complete.

SQL> select a.id,b.cid,b.id from parent a, child b where a.id=b.id;

    ID        CID         ID

     1          1          1
     1          2          1
     2          3          2

--添加約束,不附上 on delete cascade
SQL> alter table child add constraint fk_parent_child foreign key(id) references parent(id);

Table altered.

SQL> truncate table parent cascade;
truncate table parent cascade
*
ERROR at line 1:
ORA-14705: unique or primary keys referenced by enabled foreign keys in table
"HR"."CHILD"

SQL> col CONSTRAINT_NAME for a25;
SQL> col TABLE_NAME for a25;
SQL> col COLUMN_NAME for a25;
SQL> select CONSTRAINT_NAME,TABLE_NAME, COLUMN_NAME from user_cons_columns where TABLE_NAME='CHILD';

CONSTRAINT_NAME TABLE_NAME COLUMN_NAME


SYS_C0010458 CHILD CID
FK_PARENT_CHILD CHILD ID
-- 刪除并添加約束,并附上 on delete cascade
SQL> alter table child drop constraint FK_PARENT_CHILD;

Table altered.

SQL> alter table child add constraint fk2_parent_child foreign key(id) references parent(id) on delete cascade;

Table altered.

SQL> truncate table parent cascade;

Table truncated.

SQL> select a.id,b.cid,b.id from parent a, child b where a.id=b.id;

no rows selected

網(wǎng)站欄目:級(jí)聯(lián)truncate
標(biāo)題網(wǎng)址:http://bm7419.com/article12/jjepgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、定制網(wǎng)站、建站公司、商城網(wǎng)站網(wǎng)站內(nèi)鏈品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化