逻辑数据库设计------联系的转换、弱实体的转换、泛化与具体化实体的转换、多元联系的转换
- 一对一联系:若联系双方均是部分参与,则定义一个新的关系,属性为联系双方的关键字属性。若一方全部参与,一方部分参与,则部分参与的一方在创建对应关系时需添加全部参与方的关键字属性。比如职工- 管理-部门 职工与部门之间的管理关系。职工全部参与、部门部分参与,那么设计表的时候就是 职工(职工号…) 部门(部门号,职工号,…)
一对多联系:将单反参与的实体的关键字属性作为多方参与的实体的属性。比如职工和职工的领导关系。 就需要再职工表中添加领导职工号作为属性。职工(职工号,领导职工号,…)
多对多联系:将联系定义为新的关系,联系双方的关键字作为属性。比如学生 和 课程的 选课联系。除了学生表、课程表外还需将联系定义为一个表,选课(学号,课程号,…) - 弱实体所对应关系的转换是本身的区分属性加上所依赖的强实体的关键字属性,比如公司 与产品的关系 产品(产品名、公司名、…)则将联系公司制造产品 的联系表示清楚了。
- 泛化实体若是就是由具体化实体全部概括,那么可以将泛化实体的所有属性都放到具体体化实体中,再加上其分类属性。这时可以不需要泛化实体的关系了。
- 多元联系 法1:将联系定义一个条目主键,参与联系的实体的主键作为属性。法2:将参与联系的主键作为联合主键。