SQL刪除記錄中包含外來鍵約束的處理

2021-07-28 02:17:11 字數 673 閱讀 1263

有兩種方法:

一、用語句來禁用該約束

alter table 表名 disable constraint 約束名;

當然刪除了表以後,別忘記在啟用該約束

alter table 表名 enable constraint 約束名;

二、級聯刪除

在建立表的時候就需要設定級聯刪除和級聯更新(修改)。方法如下:

alter table sz_picture

add constraint fk_sz_pictu_relations_sz_pictu foreign key (picturetypeid)

references sz_picturetype (picturetypeid)

on update cascade on delete cascade --其中這句就是級聯更新和級聯刪除

級聯刪除:

刪除包含主鍵值的行的操作,該值由其它表的現有行中的外來鍵列引用。在級聯刪除中,還刪除其外鍵值引用刪除的主鍵值的所有行。

級聯更新:

更新主鍵值的操作,該值由其它表的現有行中的外來鍵列引用。在級聯更新中,更新所有外鍵值以與新的主鍵值相匹配。

另外,修改not null約束的方法如下:

alter table department alter column dname nvarchar(20)null

SQL與ORACLE的外來鍵約束 級聯刪除

sql與oracle的外來鍵約束 級聯刪除 sql與oracle的外來鍵約束 級聯刪除 最近軟體系統中要刪除一條記錄,就要關聯到同時刪除好多張表,他們之間還存在著約束關係.所以考慮到在建立表時加上約束關係,具體如下 sql的外來鍵約束可以實現級聯刪除與級聯更新 oracle則只充許級聯刪除。sql級...

SQL新增外來鍵約束

1,sql語句建立表的同時新增外來鍵約束 create table tb userandrole 使用者角色表 id int primary key identity 1,1 userid int not null,使用者id roleid int not null,角色id foreign key...

SQL程式設計 外來鍵約束

外來鍵 foreign key 乙個表中的foreign key指向另乙個表中的unique key 唯一約束的鍵 對於兩個具有關聯關係的表而言,相關聯欄位中主鍵所在的表就是主表,外來鍵所在的表就是從表 子表 外來鍵約束 foreign key約束用於預防破壞表之間連線的行為,也能防止非法資料插入外...