myql 外键关联问题

来源:互联网 发布:淘宝总销量怎么计算 编辑:程序博客网 时间:2024/06/08 13:53

mysql 主表和从表概念:  假设有2张表:A,B 。A.id(主键)是B表的某一个字段,就称A.id是B标的外键 ,A是主表,B是从表。

mysql 常见的外键 有级联(cascade)方式,置空(set null)方式及禁止(no action / restrict)方式

1:cascade方式下

删除A(主表)的某一个记录,,如果在B表中存在这个(A表)删除的id,那B表的这个记录也会被删除,如果是更新的话,那么B表也会同时更新


如果删除A表id 为1的数据,那么B表mes_type为1的也会删除

2:set null方式下


如果删除A表id 为1的数据,那么B表mes_type为1的不会删除,但是mes_type这个字段会变为空


2:no action / restrict方式下

如果删除A表id 为1的数据,会提示无法删除,因为B表有这id =1的引用。。但是如果A表有一个Id为2的数据,但是B表没有引用这个Id=2的,那A表的Id=2的数据就可以删除







0 0