Mysql中外键的 Cascade ,NO ACTION ,Restrict ,SET NULL

MySQL通过外键约束实现数据库的参照完整性,外键约束条件可在创建外键时指定,table的存储引擎只能是InnoDB,因为只有这种存储模式才支持外键。

外键约束条件有以下4种:

(1)restrict方式:同no action,都是立即检查外键约束;

     - - 限制,指的是如果子表引用父表的某个字段的值,那么不允许直接删除父表的该值。

(2)cascade方式:在父表上update/delete记录时,同步update/delete子表的匹配记录 ;

     On delete cascade从mysql3.23.50开始可用,on update cascade从mysql4.0.8开始可用 ;

     -- 级联,删除/更新父表的某条记录,子表中引用该值的记录会自动被删除/更新。

(3)No action方式:如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作 这个是ANSI SQL-92标准,从mysql4.0.8开始支持;

     --无参照完整性关系,有了也不生效。

(4)set null方式:在父表上update/delete记录时,将子表上匹配记录的列设为null 要注意子表的外键列不能为not null

     On delete set null从mysql3.23.50开始可用;,on update set null从mysql4.0.8开始可用 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值