- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
E―R图的精细设计
摘要:E-R图设计是数据库设计的关键,目前诸多流行的数据库原理教材,对E-R图设计部分的讨论均显得不够精细。针对这一现状,文章通过分析不同应用环境下实体之间的联系,提出E-R图的精细设计方案,说明E-R图的正确设计方法。
关键词:数据库设计;E-R图;实体;联系
0 引言
数据库原理是计算机相关专业的一门专业主干课,目的是使学生掌握数据库的基本概念、基本理论和基本操作方法,理解数据库作为目前最有效的数据管理手段,在信息系统中的基础地位和重要作用,学会用数据库对大量数据进行有效的组织、存储和管理。因此,针对一个具体的应用环境,设计一个结构良好的数据库就成为该门课程的教学重点之一。
数据库设计人员设计的数据库结构能否真正符合应用环境和普通用户的要求,需要由普通用户来进行评判,这就要求在设计数据库的逻辑结构和物理结构之前,先设计一个普通用户也能够理解的、更加抽象的概念结构,通过概念结构使普通用户能够积极地参与到数据库设计中来,以保证整个数据库系统的最终成功运行。因此,概念结构设计是数据库设计的关键,最常用来描述概念结构的工具就是E-R图。
然而,目前诸多流行的数据库原理教材对E-R图设计部分的讨论均不够精细,实际教学也大都跟随教材浮于表面,从而使学生难以设计正确反映应用环境实际语义的E-R图,造成随后转换得到的关系模式码不正确、数据冗余度大、规范化程度低等问题。
1 E-R图的设计
E-R图设计的正确与否取决于数据库设计人员能否真正把握应用环境的业务流程以及在该业务流程中所涉及的各个客观对象和他们之间发生的活动,这需要作准确深入的用户需求分析。这些客观对象如果需要记录的话,就抽象为E-R图中的实体(描述实体的众多相关数据就抽象为实体的属性,将具有相同属性的众多实体抽象为实体型)。它们之间发生的活动如果也需要记录的话,就抽象为E-R图中的联系,这是E-R图设计的重点。
以高校学生选课系统为例,假设学校只有一种类型的学生,每名学生有唯一的一个学号,还有姓名、性别、年龄和班级信息;学校开设了多门课程,每门课程有唯一的一个课程号,还有课程名、学分、先行课和课程简介信息。由于一门课程同时可以由多个教师讲授,因此,在上一学期末进行选课的时候,每名学生可以根据主讲教师(有唯一的教师编号)的姓名、性别、年龄和职称信息,有选择地选修由某些教师讲授的某些课程。每个教师同时可以讲授多门课程,每门课程可以供多名学生选修,如果由某个教师讲授的某门课程没有学生选修,则取消由这个教师讲授的这门课程。主讲教师会在学期末将自己所教学生的所有课程成绩输入到数据库中,以供学生在网上进行查询。
首先,我们根据用户需求,分析潜在的实体。实体通常是需求文档中的中心名词,主要活动都是围绕它们开展的。显然,该系统存在学生、课程和教师这3类客观对象,每一类客观对象都有很多数据需要记录,这就构成了该系统需要记录的第一部分主要数据;此外,该系统中的主要活动――课程的选修与讲授以及成绩的输入与查询,都是围绕这3类客观对象开展的。因此,这3类客观对象就抽象为E-R图中的3个实体型,描述这3个实体型的E-R图如图1所示(带有下划线的属性为码)。
其次,根据用户需求,确定实体之间的联系。实体之间的联系通常是需求文档中的中心动词,表示实体之间发生的活动或隶属关系。在该系统中,这3个实体型之间发生的主要活动包括学生选修教师的课程(或教师给学生讲授课程)、教师输入成绩和学生查询成绩。由于一名学生可以有选择地选修由不同教师讲授的不同课程,一个教师可以给不同学生讲授不同课程,一门课程可以由不同教师给不同学生讲授。因此,选修(或讲授)活动涉及这3个实体型,是这3个实体型之间的一个多对多联系(在这种情况下,选修和讲授是同一个联系)。将该活动抽象为E-R图中的一个联系,是因为系统需要记录这样的活动,即哪名学生选修了哪个教师讲授的哪门课程,以及由此活动产生的数据――成绩(抽象为该联系的一个属性),这就构成了该系统需要记录的另外一部分主要数据。该系统还有两个活动:教师输入成绩和学生查询成绩,由于它们都只是对成绩属性的数据操作,系统并不需要对这样的数据操作也进行记录,因此,它们并不抽象为E-R图中的联系。该E-R图如图2所示。
很多教材都将图2中的选修联系看成是学生和课程这2个实体型之间的一个多对多联系(如图3所示),但这只有在学生只管选课而无需考虑主讲教师的情况下是正确的。在这种情况下,为了确定成绩最终由哪个主讲教师向数据库中输入(在图2所示的情况下,这是很直接的),一个教师只能被指定为某一个或几个班级讲授课程,如图4所示,这样才可以根据学生所在的班级及其选修的课程来综合确定哪个教师是其主讲教师,负责为其输入成绩。
您可能关注的文档
- 3D打印在中小学数学课堂中的应用分析.doc
- 3―6岁幼儿安全意识培养及研究.doc
- 3个爱情的心理学实验.doc
- 3至6岁幼儿舞蹈启蒙教育活动的实践研究.doc
- 3~6岁儿童社会认知及其发展.doc
- 3~6岁儿童社会认知培养的教育建议.doc
- 9.1市场配置资源教学设计.doc
- 90后农民工生存生活现状及对策研究.doc
- A Brief Study Of The Interactive-oriented Language Teaching.doc
- A good beginning is half done.doc
- E乐园,撬起个性学习的动力支点.doc
- E时代下小学德育面临新挑战.doc
- Flash三维可视化研究.doc
- FluidSIM在节流阀调速回路实践教学中的应用.doc
- Globalization Increases Poverty and Inequality Abstract.doc
- HiE测评系统:英语在线考试的新探索.doc
- Holiday,到博物馆探秘去.doc
- How to apply interactive teaching to English language teachingin middle schools.doc
- How to use multimedia technology to teach English well in college.doc
- HPM视角下无理数的教学.doc
文档评论(0)