您的位置:首页 > 数据库 > MySQL

Mysql外键约束

2017-01-11 17:54 120 查看
Mysql中的外键只有innodb存储引擎类型的表支持。

外键的作用是数据库表与表之前通过外键分为主从表,当主表的数据发生变化外键对应的从表也相应的改变,来保证数据的完整性和一致性。

外键的使用会对数据库服务器的性能有影响,要根据开发的场景来选择外键约束。

外键的添加:

ALTER TABLEtbl_name
ADD[CONSTRAINT 外键名] FOREIGN KEY [id] (index_col_name, ...)
REFERENCES tbl_name (index_col_name, ...)
[ON DELETE{CASCADE | SET NULL | NO ACTION | RESTRICT}]
[ON UPDATE{CASCADE | SET NULL | NO ACTION | RESTRICT}]

on delete,update时对应的4中约束类型

cascade:从表的字段值会被更新或者列被删除

setnull:主表的外键关联字段更新或删除时从表的外键列设置为null

noaction:外键约束时不进行任何操作

restrict:外键约束时不进行任何操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: