在软件架构设计师的考试中,数据库的管理是重点内容,本文主要介绍ER模型,关系代数和函数依赖。本文内容来至互联网内容的编辑修改,方便读者学习。如有侵权,第一时间联系作者删除。

1.ER图

  实体-联系方法(Entity-Relationship Approach),也叫E-R模型。主要是用来描述现实世界的概念模型。具体来说就是用以下三种图来描述我们的问题构成的世界。
在这里插入图片描述
注意:
  ①联系不能脱离实体,必须有实体连接且可以是实体的自身联系(后面有例子)
  ②属性既可以连接实体,也可以连接联系。但一个属性只能有唯一的连接对象。

1.1实体之间的联系

  ①一对一。比如:一个学校只能有一个校长,而一个校长也只能担任一个学校的校长。
在这里插入图片描述
  ②一对多。比如:一个学校里有多名教师,而每个教师只能在一个学校教学。
在这里插入图片描述
  ③多对多。比如:一个学生可以上n种课程,而每一个课程可以有m个学生学习。而上课还可以有一个属性:上课时间。
在这里插入图片描述

1.2实体集的转换规则

  一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构是关系模式。

1.3实体集间联系的转换规则

1:1联系的转换方法
在这里插入图片描述
方法一:
  将1:1联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,且每个实体的码均是该关系的候选码。

联系形成的关系独立存在:    
职工(职工号,姓名,年龄)
产品(产品号,产品名,价格)   
负责(职工号,产品号)

方法二:
  将1:1联系与某一端实体集所对应的关系合并,则需要在被合并关系中增加属性,其新增的属性为联系本身的属性和与联系相关的另一个实体集的码。

“负责”与“职工”两关系合并:
职工(职工号,姓名,年龄,产品号)
产品(产品号,产品名,价格)
          
也可以“负责”与“产品”两关系合并:
职工(职工号,姓名,年龄)
产品(产品号,产品名,价格,职工号)

1:n联系的转换方法
在这里插入图片描述
方法一:
  一种方法是将联系转换为一个独立的关系,其关系的属性由与该联系相连的各实体集的码以及联系本身的属性组成,而该关系的码为n端实体集的码。

联系形成的关系独立存在:
仓库(仓库号,地点,面积)
产品(产品号,产品名,价格)
仓储(产品号,仓库号,数量)

方法二:
  在n端实体集中增加新属性,新属性由联系对应的1端实体集的码和联系自身的属性构成,新增属性后原关系的码不变。

仓库(仓库号,地点,面积)      
产品(产品号,产品名,价格,仓库号,数量)

m:n联系的转换方法
在这里插入图片描述
  与该联系相连的各实体集的码以及联系本身的属性均转换为关系的属性,新关系的码为两个相连实体码的组合(该码为多属性构成的组合码)。

转换的关系模型为:
学生(学号,姓名,年龄,性别)
课程(课程号,课程名,学时数)
选修(学号,课程号,成绩)

三个或三个以上实体集间的多元联系的转换方法
在这里插入图片描述

课程(课程号,课程名,学分,学时)
教师(教师号,教师名,性别,职称,课程号)
参考书(书号,书名,出版社,主编,课程号)

  对于多对多的联系,转换为关系模型的方法是新建一个独立的关系,该关系的属性为多元联系相连的各实体的码以及联系本身的属性,码为各实体码的组合。
在这里插入图片描述

供应商(供应商号,供应商名,地址)
零件(零件号,零件名,单价)
产品(产品号,产品名,型号)
供应(供应商号,零件号,产品号,数量)

2.作者答疑


  如有疑问,请留言。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐