1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > mysql 查询表约束 如何在MySQL中设置外键约束以及外键的作用 – 数据库 – 前端

mysql 查询表约束 如何在MySQL中设置外键约束以及外键的作用 – 数据库 – 前端

时间:2020-06-03 20:29:32

相关推荐

mysql 查询表约束 如何在MySQL中设置外键约束以及外键的作用 – 数据库 – 前端

注意事项:

1、两个表必须是InnoDB表,MyISAM表暂时不支持外键

2、如果在较早的版本(4.1.2以前)则需要显示建立外键列必须建立了索引

3、外键关系的两个表的列必须是数据类型相似。比如int和tinyint可以,而int和char则不可以

外键约束使用最多的两种情况:

1)父表更新时子表也更新,父表删除时如果子表有匹配的项,删除失败;

2)父表更新时子表也更新,父表删除时子表匹配的项也删除。

前一种情况,在外键定义中,用ON UPDATE CASCADE ON DELETE RESTRICT;

后一种情况,可以使用ON UPDATE CASCADE ON DELETE CASCADE。

举例说明:用最常见的场景:文章表,和分类表;

创建外键约束:

ALTER TABLE `article`ADD CONSTRAINT `fk_1` FOREIGN KEY (`category_id`) REFERENCES `category` (`id`);

现在删除分类表中的一条数据:

文章表添加一条数据:

这样是不是就保证了文章表里的分类ID 都能在分类表找到对应的名称啦?

下面大家删除外键重新创建:

mysql 查询表约束 如何在MySQL中设置外键约束以及外键的作用 – 数据库 – 前端 mysql中触发器的作用是什么

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。