Mysql中級聯刪除問題

2021-05-26 15:03:12 字數 849 閱讀 2712

1.    對於兩張表 

訂單表tb_order(orderid,****)

訂單與菜表tb_order_dish(orderid,dishid,***)

2.   選擇訂單表的orderid作為外來鍵,訂單與菜表的orderid做為子鍵

sql  語句應該為:

drop table if exists `tb_order_dish`;

create table `tb_order_dish` (

`orderid` int(11) not null default '0' comment '訂單id',

`dishid` int(11) not null default '0' comment '菜id',

`dishnumber` varchar(10) default null comment '菜數量',

primary key (`orderid`,`dishid`)

) engine=innodb default charset=gb2312 comment='訂餐表';

alter table `tb_order_dish`

add constraint `orderanddish` foreign  key (`orderid`)  references  `tb_order` (`orderid`) on delete cascade   on  update  cascade;    

3.   也可以用工具在tb_order_dish中建立乙個約束             然後設定部分匹配            on  delete  層疊    on  delete  層疊

4 .   這樣就可以級聯刪除  級聯更新了 

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...