一、一对一关系:
定义:有两个表,在第一个表中的某一行只与第二个表中的一行相关,同时第二个表中的某一行,也只与第一个表中的一行相关,我们称这两个表为一对一关系。
例如:
第一张表:
ID | 姓名 | 国籍 | 贡献 |
1001 | 王大锤 | 中国 | 万万没想到 |
1002 | 吉泽明步 | 日本 | 动作艺术片 |
1003 | 刀锋女王 | 未知 | 计划生育 |
第二张表:
ID | 出生日期 | 逝世日期 |
1001 | 1988 | NULL |
1002 | 1984 | NULL |
1003 | 未知 | 3XXX |
这里的第一张表的每一行只与第二张表的一行相对应。
提示:一对一关系是比较少见的关系类型。但在某些情况下,还是会需要使用这种类型。
情况一:一个表包含了太多的数据列
情况二:将数据分离到不同的表,划分不同的安全级别。
情况三:将常用数据列抽取出来组成一个表
二、一对多关系:
定义:有多张表,第一个表中的行可以与第二个表中的一到多个行相关联,但是第二个表中的一行只能与第一个表中的一行相关联。
例如:
第一张表:
ID | 姓名 | 国籍 |
|
1001 | 王大锤 | 中国 |
|
1002 | 吉泽明步 | 日本 |
|
1003 | 刀锋女王 | 未知 |
|
ID | 节目ID |
1001 | 10001 |
1001 | 10002 |
1003 | 10003 |
1003 | 10004 |
第三张表:
节目ID | 节目名称 |
10001 | 万万没想到 |
10002 | 报告老板 |
10003 | 星际2 |
10004 | 英雄联盟 |
这里的第一张表的一行可以与第二张表的多行相对应;第二张表的一行与第三张表的一行相对应。
提示:一对多关系是最常见的关系类型。
三、多对多关系:
定义:有两个表,第一个表的一行可以与第二个表中的一到多个行相关联,同时,第二个表中的一行可以与第一个表中的一到多个行相关联。
例如:
第一张表:
ID | 姓名 | 国籍 |
|
1001 | 王大锤 | 中国 |
|
1002 | 吉泽明步 | 日本 |
|
1003 | 刀锋女王 | 未知 |
|
ID | 节目ID |
1001 | 10001 |
1001 | 10002 |
1003 | 10003 |
1003 | 10004 |
第三张表:
节目ID | 节目名称 |
10001 | 万万没想到 |
10002 | 报告老板 |
10003 | 星际2 |
10004 | 英雄联盟 |