create table c
(id varchar(20) primary key,
password varchar(20) not null
)create table d
(id int identity(1,1) primary key,
name varchar(20) not null,
userid varchar(20),
foreign key(userid) references c(id) on delete cascade
)insert c values ('11','aaa')
insert c values('23','aaa')
insert d values('da','11')
insert d values('das','11')
insert d values('ww','23')
delete c where id='11'
資料庫級聯更新和刪除
如果a id,name 表為主表。b id,a id,name 表為從表,b.a id外來鍵關聯到a id。那麼如果需要更新a.id或者刪除a的資料,且在b表中有資料關聯到需要更新或者刪除的a表紀錄,那麼普通的更新必然會有外來鍵衝突。解決方法如下 mysql 在b表中建立delete cascade...
雜糅 資料庫級聯關係
實際上無論是多對一,一對多,多對多,還有一對一。最底層的實現的本質就是外來鍵關係,外來鍵怎麼處置,放誰中。一對一基本是單向的,不需要雙向,雙向的話為什麼不放在一張表裡呢。一對多多對一關鍵還是多的一方拿到一的外來鍵。不要雙向設定,級聯關係太亂。多對多,有一種多對多的實現方式是在多的兩端設定,實際上最後...
資料庫之級聯操作
當有了外來鍵約束的時候,必須先修改或刪除副表中的所有關聯資料,才能修改或刪除主表!但是,我們希望直接修改或刪除主表資料,從而影響副表資料。可以使用級聯操作實現 級聯修改 on updata cascade 級聯刪除 on delete cascade 把部門名稱 改為部門id 我們只需要這樣做,這樣...