数据库设计时,遇到三元联系怎样确定,下面做个简单介绍。
一、确定联系
三元联系共 4 种情况:
1. 1 : 1 : 1
2. 1 : 1 : N
3. 1 : M : N
4. M : N : P
1 : 1 : 1 联系
解释:
- 一名
技术员对于每个项目使用一本手冊
- 每一本手冊对于每个项目属于一名技术员
- 一名技术员可能在做多个项目,对于不同的项目维护不同的手冊
1 : 1 : N 联系
解释:
- 每个员工在一个地点仅仅能被分配一个项目,但能够在不同地点做不同的项目
- 在一个特定的地点。一个员工仅仅能做一个项目
- 在一个特定的地点,一个项目能够由多个员工来做
1 : M : N 联系
解释:
- 一名经理手下的一名工程师可能参与多个项目
- 一名经理管理的一个项目可能会有多名工程师
- 做某一个项目的一名工程师仅仅会有一名经理
M : N : P 联系
解释:
- 一名员工在一个项目中能够使用多种技能
- 一名员工的一种技能能够在多个项目中使用
- 一种技能在一个项目中能够被多名员工使用
解释都是从一个实体出发,看向另外两个实体,根据数量关系,进行解释。
业务解释通了,ER 图及数据库表设计自然出现
二、三元联系类型的转换
确定其关系外,另一点就是怎样将上面的ER模型关系转换成关系表的形式。
方法:
1. 若实体间联系是 1:1:1。能够在三个实体类型转换成的三个关系模式中随意一个关系模
式的属性中增加另两个关系模式的键(作为外键)和联系类型的属性。
2. 若实体间联系是 1:1:N。则在 N 端实体类型转换成的关系模式中增加两个 1
端实体类型的键(作为外键)和联系类型的属性。
3. 若实体间联系是 1:M:N。则将联系类型也转换成关系模式,其属性为 M 端和 N
端实体类型的键(作为外键)加上联系类型的属性。而键为 M 端和 N 端实体键的组合。
4. 若实体间联系是 M:N:P。则将联系类型也转换成关系模式,其属性为三端实体类型的键
(作为外键)加上联系类型的属性。而键为三端实体键的组合。