首页 > 代码库 > MySQL第三课

MySQL第三课

MySQL外键

1.什么是外键

表与表之间的特定关系。保持数据的完整性和一致性。

user用户表

Order订单表

1.1 删除用户、没有删除订单,数据就不一致

1.2 Order表中插入记录

外键控制:让用户不更新数据,或者是用户删除数据的时候,让订单同步也删除

2.外键的特点:

2.1查看是否存在外键:

2.1.1 innodb类型

show create table 表名:

技术分享

 engine--存储引擎

2.1.2 外键是两张表的约束关系。

2.1.3外键的名称唯一。

3.创键外键

create table 表名(列定义 索引定义 外键定义[constraint 约束名称] foreign key[外键字段]

references[外键名称](外键字段)

[on delete{retrict|cascade|set null | no action}]

[on update{restrict|cascade|set null|no action}])

restrict:拒绝对父表的删除或更新操作

cascade:父表的删除或更新,自动删除或更新子表中对应的记录。

set null 父表删除、更新,设置字表外键字段null

no action:不作为。

 技术分享

删除外键:

技术分享

MySQL第三课