多个数据库表建立外键约束的相关理解

一、知识准备

所谓“外键约束”,就是一个表中的FOREIGN KEY 与另一个表中的UNIQUE KEY(唯一约束的建,一般为主键)

通俗一些的话,就是将单独的没有啥关系的表利用一些共同点结合起来,在进行表的相关操作时,这几个“外键约束”的表都会受到关联

那么,我们需要如何实现外键约束呢?

经过查找相关资料,得出以下结论:

在表的关系中,存在三种关系:包括一对一、一对多、多对多

首先来说------一对一

一对一的话,在哪一个表中添加外键都是可以的,代码如下:

得到这样的结果:

两边均没有分叉,是一对一的表间关系啦!

其次,就是------一对多

一对多的话,他两边是不均衡的,所以首先需要搞清楚的是,我们要将外键加在哪一边?

答案揭晓:将外键加在的那一边!

代码如下:

需要注意的是,在多的那张表里面,需要进行对应的数据中,不要有主表里面不存在的数据,否则就会报错!

得到结果如下:

一个仅有一个分叉,另一个有多个分叉,是一对多的表间关系啦!

最后,就是------多对多

多对多对外键加在那一边并没有特别要求,但是多对多最不同的一点是:这种关系下,需要建立第三张表与之建立联系,才能够实现多对多的对应关系

代码如下:

中间表放在前面,其余与前面代码基本一致;

得到结果如下:

三个表实现了外键约束

删除表间关系的语句

在我们使用完之后或许想要将几个表之间的关系删除,那么我们就需要这样一行代码来实现这件事,代码如下:

主要语法为:

alter table 其中一个表名 drop foreign key 外键约束名;

起初,我没找到外键约束名在哪里,后来,进入表间模型之后,无意间选中了“设计关系”,就发现了外键约束名,没找到的小伙伴们也可以试一试嗷!

表间的关系到这里就先结束啦!

对啦!如果有不太理解如何在mysql数据库里面进入到表模型界面的。可以继续向下看一看呦!

在已经在新建的表里面进行了外键约束,且回复OK,想要查看可视化外键约束的,可以这么做:

选中你已经建立约束的表(有几个选几个),然后右键,选择“逆向表到模型...”,就可以跳转到可视化约束界面啦!

下次见啦!

posted @ 2022-10-24 22:03  yesyes1  阅读(106)  评论(0编辑  收藏  举报