首页 > 数据库技术 > 详细

MySQL-认识外键

时间:2020-12-28 23:58:51      阅读:42      评论:0      收藏:0      [点我收藏+]

1.认识外键;

  • 在存储关系的表中添加字段,为该字段创建外键来引用另一个表的主键,从而建立关系
  • 通过外键约束进行数据的有效性验证,当添加或修改的数据不是引用另一个表的主键时,则报错

2.外键约束如何创建?

  • 方式1:创建表时可以直接创建约束

    create table 表名(
    
    字段 类型...,
    
    ...
    
    foreign key(字段) references 主表名(id),
    
    ...
    
    );
  • 方式2:添加外键约束

    alter table 表名 add constraint 约束名 foreign key(字段名) references 主表名(id);其中约束名可以任意起

     

3.如何删除外键约束?

  • 第一步:先查找出约束名

    show create table 表名;
  • 第二步:根据约束名进行删除

    alter table 表名 drop foreign key 约束名;

     

4.外键的级联操作

  • 级联操作的类型包括:

    • restrict(限制):默认值,抛异常
    • cascade(级联):如果主表的记录删掉,则从表中相关联的记录都将被删除
    • set null:将外键设置为空
    • no action:什么都不做
  • 当删除某个表时,如果这个表的id值作为外键被另一个表进行了引用,则会抛出异常,解决方式有以下两种:

    • 方式一:使用逻辑删除(推荐)

    • 方式二:创建表时指定级联操作
      alter table 表名 add constraint 约束名 foreign key(字段名) references 主表名(id) on delete 级联操作类型;

       

 

MySQL-认识外键

原文:https://www.cnblogs.com/Elite-Wang/p/14204167.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!