通知
关于网站更多信息请加whimurmur模板/jpress插件QQ群(1061691290)            jpress从3.x升级到4.x,显示有些问题,慢慢修复中

数据库系统概论高级 7-3 数据库设计 E-R图及其设计

574人浏览 / 0人评论 / | 作者:因情语写  | 分类: 数据库系统概论  | 标签: 数据库系统概论  | 

作者:因情语写

链接:https://www.proprogrammar.com/article/584

声明:请尊重原作者的劳动,如需转载请注明出处


    7.3 概念结构设计

    7.3.1 概念模型

    什么是概念结构设计
    将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计;
    概念结构是现实世界的一个真实模型。是各种数据模型的共同基础, 它比数据模型更独立于机器、更抽象,从而更加稳定;
    概念结构设计是数据库设计的关键。

    回顾:两类数据模型

    回顾: 1.2.2 概念模型

    概念模型的用途

  • 概念模型用于信息世界的建模
  • 是现实世界到机器世界的一个中间层次
  • 是数据库设计的有力工具
  • 数据库设计人员和用户之间进行交流的语言

    对概念模型的基本要求

  • 较强的语义表达能力
  • 简单、 清晰、 易于用户理解

 

    例:工厂物质管理的概念模型

    回顾:信息世界中的基本概念

    (1) 实体(Entity)
    客观存在并可相互区别的事物称为实体。
    可以是具体的人、 事、 物或抽象的概念。
    (2) 属性(Attribute)
    实体所具有的某一特性称为属性。 一个实体可以由若干个属性来刻画。
    (3) 码(Key)
    唯一标识实体的属性集称为码。
    (4) 实体型(Entity Type)
    用实体名及其属性名集合来抽象和刻画同类实体称为实体型
    (5) 实体集(Entity Set)
    同一类型实体的集合称为实体集

    (6) 联系(Relationship)

  • 现实世界中事物内部以及事物之间的联系在信息世界中反映为实体(型) 内部的联系和实体(型) 之间的联系。
  • 实体内部的联系: 是指组成实体的各属性之间的联系
  • 实体之间的联系: 通常是指不同实体集之间的联系

    实体之间的联系有一对一(1:1) 、 一对多(1:m) 和多对多(m:n) 等多种类型

    回顾: 实体-联系方法

    概念模型的一种表示方法:
    实体-联系方法(Entity-Relationship Approach)

  • 用E-R图来描述现实世界的概念模型
  • E-R方法也称为E-R模型

 

    7.3.2 E-R模型

    1. 实体之间的联系
    (1)两个实体型之间的联系,可以分为三种:

  • 一对一联系(1∶1)
  • 一对多联系(1∶n)
  • 多对多联系(m∶n)

 

    一对一联系(1∶1)
    如果对于实体集A中的每一个实体,实体集B中最多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1∶1。
    例如,学校里一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间具有一对一联系。

    一对多联系(1∶n)
    如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1∶n。
    例如,一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系。

    多对多联系(m∶n)
    如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体集B具有多对多联系,记为m∶n。
    例如,一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,则课程与学生之间具有多对多联系。

    (2)两个以上的实体型之间的联系:也存在着一对一、一对多、多对多联系。

    对于课程、教师与参考书,如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师只讲授一门课程,每一本参考书只供一门课程使用。
    则课程与教师、参考书之间的联系是一对多的。

    对于供应商、项目、零件,一个供应商可以供给多个项目多种零件,而每个项目可以使用多个供应商供应的零件,每种零件可由不同供应商供给。
    可以看出供应商、项目、零件三者之间是多对多的联系。

    (3)单个实体型内的联系,也存在一对一、一对多、多对多的联系。
例如,职工实体型内部具有领导与被领导的联系,即某一职工(干部)“领导”若干名职工,而一个职工仅被另外一个职工直接领导,因此这是一对多的联系。

    把参与联系的实体型的数目称为联系的度。
    两个实体型之间的联系度为2,也称为二元联系;
    三个实体型之间的联系度为3,也称为 三元联系;
    N个实体型之间的联系度为N,也称为N元联系。

    2. E-R图:提供了表示实体型、属性和联系的方法:

  • 实体型:用矩形表示,矩形框内写明实体名。
  • 属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来。

    例,学生实体具有学号、姓名、性别、出生年份、系、入学时间等属性,

 

    联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1∶1, 1∶n 或m∶n)。

    联系可以具有属性

    E-R图 例题解析(1)

    例题1

    某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品。这些零件由不同的原材料制成,不同零件所用的材料可以相同。有的零件可用在不同的产品,这些零件按照所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。
    请用E-R图画出此工厂产品、零件、材料、仓库的概念模型。

    解答

    E-R图例题解析(2)

    例题2

    学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教师,其中有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课程可由若干学生选修。
请用E-R图画出此学校的概念模型, 并加入实体和联系的属性。

    E-R图例题解析(3)

    例题3

    画出某个工厂物资管理的概念模型(教科书P.218)
    物资管理涉及的实体有:

  • 仓库:属性有仓库号、面积、电话号码
  • 零件:属性有零件号、名称、规格、单价、描述
  • 供应商:属性有供应商号、姓名、地址、电话号码、账号
  • 项目:属性有项目号、预算、开工日期
  • 职工:属性有职工号、姓名、年龄、职称

    实体属性图

 

    实体之间的联系

    (1) 一个仓库可以存放多种零件,一种零件可以存放在多个仓库中,因此仓库和零件具有多对多的联系。 用库存量来表示某种零件在某个仓库中的数量。
    (2) 一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,因此仓库和职工之间是一对多的联系。
    (3) 职工之间具有领导-被领导关系。即仓库主任领导若干保管员,因此职工实体型中具有一对多的联系。
    (4) 供应商、项目和零件三者之间具有多对多的联系。即一个供应商可以供给若干项目多种零件,每个项目可以使用不同供应商供应的零件,每种零件可由不同供应商供给。

    实体与实体之间联系图

    工厂物资管理的E-R图

 


亲爱的读者:有时间可以点赞评论一下

点赞(0) 打赏

全部评论

还没有评论!
广告位-帮帮忙点下广告