




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、An Introduction to Database System数据库系统概论数据库系统概论An Introduction to Database System概念模型概念模型An Introduction to Database Systemsv概念模型的用途 概念模型用于信息世界的建模 是现实世界到机器世界的一个中间层次 是数据库设计的有力工具 数据库设计人员和用户之间进行交流的语言v对概念模型的基本要求 较强的语义表达能力 能够方便、直接地表达应用中的各种语义知识 简单、清晰、易于用户理解An Introduction to Database Systems信息世界中的基本概念信息世
2、界中的基本概念(1) 实体(Entity) 客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念。(2) 属性(Attribute) 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。 (3) 码(Key) 唯一标识实体的属性集称为码。An Introduction to Database Systems信息世界中的基本概念信息世界中的基本概念(续续)(4) 域(Domain) 属性的取值范围称为该属性的域。 (5) 实体型(Entity Type) 用实体名及其属性名集合来抽象和刻画同类实体称为实体型(6) 实体集(Entity Set) 同一类型实体的集合称为
3、实体集An Introduction to Database Systems信息世界中的基本概念信息世界中的基本概念(续续)(7) 联系(Relationship) 现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。 实体内部的联系通常是指组成实体的各属性之间的联系 实体之间的联系通常是指不同实体集之间的联系An Introduction to Database Systems二、两个实体型之间的联系二、两个实体型之间的联系实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系
4、名联系名mnm:n联系联系实体型实体型B用图形来表示两个实体型之间的这三类联系用图形来表示两个实体型之间的这三类联系 An Introduction to Database Systems二、两个实体型之间的联系(续)二、两个实体型之间的联系(续) v一对一联系(1:1) 实例一个班级只有一个正班长一个班长只在一个班中任职 定义: 如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1 班级班级班级班级-班长班长班长班长111:1联系联系An Introduction to Database Systems两个
5、实体型之间的联系两个实体型之间的联系 (续续)v一对多联系(1:n) 实例一个班级中有若干名学生,每个学生只在一个班级中学习 定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n班级班级组成组成学生学生1n1:n联系联系An Introduction to Database Systems两个实体型之间的联系两个实体型之间的联系 (续续)v多对多联系(m:n) 实例课程与学生之间的联系:一门课程同时有若干个学生选修一个学生可以同时选修多门课程 定义:如果对
6、于实体集A中的每一个实体,实体集B中有n个实体(n0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n课程课程选修选修学生学生mnm:n联系联系An Introduction to Database Systems三、两个以上实体型之间的联系三、两个以上实体型之间的联系v两个以上实体型之间一对多联系 若实体集E1,E2,.,En存在联系,对于实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实体,最多只和Ei中的一个实体相联系,则我们说Ei与E1,E2,.,Ei-1,Ei+1,.,En之间的联系是一对多
7、的An Introduction to Database Systems两个以上实体型之间的联系两个以上实体型之间的联系(续续)v实例 课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,使用若干本参考书,每一个教师只讲授一门课程,每一本参考书只供一门课程使用课程课程讲授讲授教师教师1m两个以上实体型间两个以上实体型间1:n联系联系参考书参考书nAn Introduction to Database Systems两个以上实体型之间的联系两个以上实体型之间的联系(续续)v 多个实体型间的一对一联系v 两个以上实体型间的多对多联系 实例 供应商、项目、零件三个实体型一个供应商可以供给多个项
8、目多种零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给供应商供应商供应供应项目项目mp两个以上实体型间两个以上实体型间m:n联系联系零件零件nAn Introduction to Database Systems四、单个实体型内的联系四、单个实体型内的联系v 一对多联系 实例 职工实体型内部具有领导与被领导的联系某一职工(干部)“领导”若干名职工一个职工仅被另外一个职工直接领导这是一对多的联系v一对一联系 请举例职工职工领导领导1n单个实体型内部单个实体型内部1:n联系联系An Introduction to Database Systems单个实体型内的联系单个实体型内的联
9、系实体型实体型1联系名联系名mn单个实体型内的单个实体型内的m:n联系联系v多对多联系多对多联系An Introduction to Database Systems五、五、 概念模型的一种表示方法概念模型的一种表示方法v实体联系方法(E-R方法) 用E-R图来描述现实世界的概念模型 E-R方法也称为E-R模型An Introduction to Database SystemsE-R图图v实体型用矩形表示,矩形框内写明实体名。v属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生教师教师学生学生学号学号年龄年龄性别性别姓名姓名An Introduction to Database S
10、ystemsE-R图图(续续)v联系 联系本身: 用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n) An Introduction to Database Systems联系的属性联系的属性课程课程选修选修学生学生mn成绩成绩v联系的属性联系的属性:联系本身也是一种实体型,也联系本身也是一种实体型,也 可以有属性。如果一个联系具可以有属性。如果一个联系具有属性,则这些属性也要用无有属性,则这些属性也要用无向边与该联系连接起来向边与该联系连接起来 KeysvA key is a set of attributes for o
11、ne entity set such that no two entities in this set agree on all the attributes of the key. It is allowed for two entities to agree on some, but not all, of the key attributes.vWe must designate a key for every entity set.vKeys in E/R Diagrams: Underline the key attribute(s)Example: a Multi-attribut
12、e KeyCoursesdeptnumberhoursroom设计原则设计原则u 忠实(Faithfulness)u 避免冗余(Avoid redundancy).u 能用属性表示的情况下绝不用实体集忠实性忠实性v例 1 实体集Stars 和Movies之间的 Stars-in 联系应该是m:n。filmtypeStarsaddressnameMoviestitlelengthyearStars_inmn忠实性忠实性(续续)v例 2 实体集Course和 Instructors之间的Teach联系可以是m:n,但也可能是1:n或者其它类型。避免冗余避免冗余v同一个信息以不同的方式多次存在就会发
13、生冗余。v冗余会造成空间浪费,更重要的是可能产生数据不一致。Example: GoodMoviesStudiosOwnstitlenameaddryearm1Example: BadMoviesStudiosOwnstitlenameaddryearStudioName1mExample: BadMoviestitleyearStudioNameStudioAddr实体集实体集VS. 属性属性v一个事物被抽象成实体集,应至少满足下面的条件之一:除了事物的名字外,还应该有其他描述信息;至少有一个非主属性或该事物出现在m:n或n:1联系的多端。Example: GoodMoviesStudioOw
14、nstitlenameaddr1mExample: GoodMoviestitleStudioNameExample: BadMoviesStudiosOwnstitlename1m7.4 逻辑结构设计逻辑结构设计v E-R图向关系模型的转换图向关系模型的转换v 数据模型的优化数据模型的优化v 设计用户子模式设计用户子模式An Introduction to Database SystemsAn Introduction to Database SystemE-R图向关系模型的转换图向关系模型的转换vE-R图向关系模型的转换要解决的问题 如何将实体型和实体间的联系转换为关系模式 如何确定这些关
15、系模式的属性和码 v转换内容 将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转换为关系模式。An Introduction to Database SystemE-R图向关系模型的转换(续)图向关系模型的转换(续)实体型间的联系有以下不同情况 :(1)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。转换为一个独立的关系模式 与某一端实体对应的关系模式合并(2)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。 转换为一个独立的关系模式与n端对应的关系模式合并An Introduction to Database Syste
16、mE-R图向关系模型的转换(续)图向关系模型的转换(续)(3) 一个m:n联系转换为一个关系模式。例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码:选修(学号,课程号,成绩)An Introduction to Database SystemE-R图向关系模型的转换(续)图向关系模型的转换(续)(4)三个或三个以上实体间的一个多元联系转换为一个关系模式。例,“讲授”联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书号为关系的组合码:讲授(课程号,职工号,书号)An Introduction to Database SystemE-R图向关系模型的转换(续)图向关系模型的转换(续)(5)具有相同码的关系模式可合并 目的:减少系统中的关系个数 合并方法:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适当调整属性的次序An Introduction to Datab
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025标准版租赁合同协议书
- 2025建筑工程质量检测有限公司委托合同
- 2025机械设备产品买卖合同范本
- 2025年的房屋租赁合同模板
- 2025建筑工程设计咨询合同(项目)
- 2025年城市住宅租赁合同协议
- 2025西安市企业员工劳动合同书
- 2025公寓租赁合同模板
- 医药学院教学课件:中药现代化与中西医结合
- 2025室内设计委托合同书模板
- 道路建设项目实施方案范文(五篇)
- 矿井有计划停电停风通风安全技术措施
- 医院评审员工应知应会手册2
- 舞台人生走进戏剧艺术学习通期末考试答案2023年
- 河南省矿山储量动态检测技术指南
- 专卖执法人员资格考试题库
- 全要素加强化工过程安全管理
- 金赛 说明书完整版
- 游戏的类型及其特点
- YS/T 285-2012铝电解用预焙阳极
- GB/T 9410-2008移动通信天线通用技术规范
评论
0/150
提交评论