数据库原理及应用课件作者范剑波第2章节实体-联系数据模型.pptVIP

数据库原理及应用课件作者范剑波第2章节实体-联系数据模型.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.1 数据库建模概述 要设计一个有用的数据库,首先要考虑在数据库中 存放什么信息,然后分析这些信息之间有什么联系,最 后确定数据库的结构。 数据库的结构通常称为数据库模式,它是用某种语 言或表示法来描述的。在本书中,数据库建模主要使用 以下两种方法。 第一种方法是先将现实世界中的想法用信息世界中 的实体-联系模型(简称E-R图)进行描述,然后将其转 换成机器世界中的关系模型,最后在关系DBMS上实现。 第二种方法是先将现实世界中的想法用对象定义语 言(简称ODL,一种面向对象的数据模型)进行描述,然后 直接在面向对象DBMS上实现,或者将ODL转换成关系模型 并在关系DBMS上实现。 2.2 E-R模型(E-R图) 2.2.1 E-R图的主要组成部分 例1 在一般情况下,一个学生可以选修多门课程且一 门课程可以让多个学生来选修;一门课程只能有一名 课代表且一个学生允许担任几门课的课代表。用E-R图 来可以表示一个简单的学生选课数据库,如下图2.2所 示。 图2.2 学生选课数据库的E-R图 例2 在一般情况下,一部电影有一批演员且每位演员可 以出演多部电影;每家制片公司拥有多部电影且每部电 影只归一家制片公司所有;每家制片公司只有一位公司 总裁且每位公司总裁只在一家制片公司任职。用E-R图可 以表示一个电影资料数据库,如下图2.3所示。 图2.3 电影资料数据库的E-R图 2.2.2 E-R图联系中的角色 在一个联系中,一个实体集可能出现两次或多 次;如果这样的话,那么一个实体集在联系中出现多 少次,我们就从该联系到该实体集画多少条线。连向 实体集的每一条线代表该实体集在联系中所扮演的每 一个角色,我们把它扮演的角色标记在连线的侧面。 例如一门课可能有几门先修课,如“面向对象程 序设计”、“数据结构”等就是“数据库原理及应 用”的先修课;而同一门课也可能是几门其他课的先 修课,比如“面向对象程序设计”既是“数据结构” 也是“数据库原理及应用”的先修课。 由前分析可以知道,实体集Course(课程)和它 本身的联系prelearn(先修)是多对多的联系,角色 predecessor代表先修课,Successor代表后继课,如 下图2.4所示。 图2.4 具有角色的联系 2.2.3 E-R图联系的多向性 联系有时不仅局限于两个实体集之间,也可能涉及 到三个或更多的实体集,这时就构成了多向联系。假设 在学生选课数据库中增加一个实体集Teacher(老师), 这样学生选课联系就涉及到三个实体集:Student, Course,Teacher。 假设同样一门课可能同时有几位老师开设,而每位 老师都可能开设几门课,学生可以在选课的同时选择老 师。这时,只用学生和课程之间的联系已经无法完整的 描述学生选课的信息了,必须用到如图2.5所示的三向 联系S_C_T。对于特定的学生和课程,只有一位老师与 它们相对应。一个学生可以选修一个老师开的几门课, 而一个老师开的一门课也可以有多个学生去选。 图2.5 三向联系的例子 总之,在多向联系中,如果从多端若干实体集中各 取出一个实体,那么这几个实体将与一端中唯一的实体 相关。虽然用多向(或多元)联系能更形象地反映某些现 实世界,但从数据库建模的角度,用二元联系更为方 便。可以将多向(或多元)的联系转换成二元的联系,如 图2.6所示。 图2.6 用实体集和二元联系代替多向联系 2.3 设计原则 2.3.1 真实性 最基本的设计原则就是:实体集和属性应当是真实 的,应当反映客观现实。 2.3.2 避免冗余 在设计过程中还要注意,任何事物都只表达一次, 否则既浪费空间,又容易造成不必要的麻烦。 2.3.3 简单性 在设计数据库的过程中,一定要设法避免引入过多 的元素,而应该尽量简单明了。 2.3.4 合理选择元素类型 一般来说,假如某个事物具有比名称更多的信息(属 性),那么作为实体集来实现更加合适;然而,如果它除 了名称之外不具有其他信息,那么作为属性可能更合 理。 2.4 子类和继承 2.4.1 E-R图中的子类 实体是实体集的成员,实体集是同类实体的集合。 在面向对象数据模型里,实体相

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档