以下方法來自網路:
create table person_fileinfo (
person_id int not null,
fileinfo_id int not null ,
primary key(person_id,fileinfo_id),
foreign key(fileinfo_id) references fileinfo(id) on delete cascade,
foreign key(person_id) references person(id) on delete cascade
) 注意加入on delete cascade
在mysql中實現這樣的級聯是很麻煩你,但可以實現的。根據我的思想提供兩種解決方式。
1.因為mysql中要實現級聯刪除,建立的表必須滿足:
a、必須使用innodb引擎;
b、外來鍵必須建立索引(index);
如果資料庫表已經做好了,用這種方式就得回去改變表的屬性,很煩。
第二種方式:
不需要改變表的結構:
在程式中去實現,如果你根據條件刪除了a表中的資料庫,在寫乙個方法,在去b表中刪除a中的相關資料,這樣也算實現了級聯,不過只是通過程式實現的。資料刪除使用的時間可以忽略的。
mysql級聯刪除
首先,目前在產品環境可用的mysql版本 指4.0.x和4.1.x 中,只有innodb引擎才允許使用外來鍵,所以,我們的資料表必須使用innodb引擎。但mysql 5版本以上不需指定innodb引擎。下面,我們先建立以下測試用資料庫表 create table roottb id int 11 ...
mysql 多表級聯刪除
備忘一下 例如存在3個表,a,b,c.a,b是一對多關係 a id,name a b id,aid,name b b,c是一對多關係 b id,aid,name b c id,bid,name c 實現效果 刪除乙個a的id,與之關聯的b內aid的所有元組都刪除,b刪除就會把c關聯b的bid的所有元...
phpmyadmin級聯刪除,mysql
資料庫中的好東西 今天在做專案的時候偶然遇到了級聯刪除的問題,想到mssqlserver和access有級聯刪除,然後去找了下資料,mysql也是有的,有些孤陋寡聞了.在仔細的尋找過後,在phpmyadmin中發現了建立級聯刪除的方法.首先需要兩個表 乙個表 使用者 user id username...