一個(gè)利用Oracle表的主外鍵關(guān)系實(shí)現(xiàn)級(jí)聯(lián)刪除的實(shí)例
Oracle級(jí)聯(lián)刪除可以使用觸發(fā)器來(lái)實(shí)現(xiàn),但是實(shí)現(xiàn)起來(lái)會(huì)比較麻煩,最簡(jiǎn)單的就是直接建立表的主外鍵關(guān)系,給列設(shè)置級(jí)聯(lián)刪除。
——創(chuàng)建了CLASS表,并設(shè)置ID字段為主鍵。
-- Create table
- create table CLASS
- (
- ID VARCHAR2(2) not null,
- CLASS_NAME VARCHAR2(20)
- )
- alter table CLASS
- add constraint PK_CLASS primary key (ID)
——創(chuàng)建了STUDENTS表,并設(shè)置ID字段為主鍵,CLASS_ID為外鍵且有級(jí)聯(lián)刪除。
-- Create table
- create table STUDENTS
- (
- ID VARCHAR2(4) not null,
- CLASS_ID VARCHAR2(2) not null,
- STU_NAME VARCHAR2(20),
- STU_AGENUMBER
- )
- alter table STUDENTS
- add constraint PK_STU primary key (ID)
- alter table STUDENTS
- add constraint FK_STU foreign key (CLASS_ID)
- references CLASS (ID) on delete cascade;
這樣刪除了班級(jí)ID,所屬的學(xué)生都會(huì)被刪除。這就實(shí)現(xiàn)了Oracle的級(jí)聯(lián)刪除。
本文就介紹到這里,如果想了解更多關(guān)于Oracle數(shù)據(jù)庫(kù)的知識(shí),可以看一下這里的文章:http://database.51cto.com/oracle/。
【編輯推薦】