


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统原理2.2ER 模型的基本概念ER 模型由 Peter Chen 于 1976 年在命题为“实体联系模型:将来的数据视图”论文中提出。2.2.1ER 模型的基本元素1 实体定义:实体:是一个数据对象,指应用中可以区别的客观存在的实物。实体集:是指同一类实体构成的集合。实体类型:是对实体集中实体的定义。ER 模型中提到的实体往往是指实体集。实体用方框表示,方框内注明实体的命名。2 联系定义:实体不是孤立的,实体之间是有联系的。联系:表示一个或者多个实体之间的关联关系。联系集:是指同一类联系构成的集合。联系类型:是对联系集中联系的定义。联系是实体之间的一种行为。联系用菱形框表示,并用线段
2、将其与相关的实体连接起来。3 属性定义:属性:实体的某一特性成为属性,能够唯一表示实体的属性或属性集称为“实体标识符” 。一个实体只有一个标识符,没有候选标识符的概念。实体标识符有事也成为实体的主键。属性用椭圆形框表示,加下划线的属性为标识符。属性域是属性的可能取值范围,也成为属性的值域。2.2.2 属性的分类1 简单属性和符合属性:( 1) 简单属性个是不可再分割的属性,符合属性是可在费解为其他属性的属性。2 单值属性和多值属性:( 1)单值属性指的是同一实体的属性只能取一个值,多值属性指同意实体的某些属性可能取多个值缺点:如果太过简单的表示多值属性, 会产生大量的数据冗余, 造成数据库潜在
3、的数据异常、数据不一致性和完整性的缺陷。调整方式:修改原来的ER 模型,对多值属性进行变换。有以下两种方法:1) 将原来的多值属性用几个新的单值属性来表示。2) 将原来的多值属性用一个新的实体类型表示:这个新实体以来于原实体而存在,我们称之为弱实体。3 存储属性和派生属性:( 1)派生属性: 两个或两个以上的属性值是相关的,可以从其他熟悉吸纳个只推导出值的属性,称为派生属性。( 2)储存属性: 派生属性的值不必存储在数据库内,而其他需要存储值的属性称为储存属性。4 允许为空值的属性:当实体的某个属性上没有值时应使用空值(Null value),Null 还可以用于值未知的时候,未知的值可能是缺
4、失的,或者不知道的。在数据库中,空值是很难处理的一种值。2.2.3 联系的设计1.联系的元数:编辑版 word定义:一个联系涉及到的实体集个数,成为该联系的元数或度数。同一实体集内部的实体之间的联系,称为一元联系,也称为递归联系。两个不同的实体集、实体之间的联系,称为二元联系。三个不同实体集实体之间的联系,称为三元联系。以此类推2 联系类型约束:( 1)基数约束:定义:实体集 E1 和 E2 之间有二元联系,则参与一个联系中的实体数目称为映射基数。二元联系有1:1 1:N N:M在具体实现时,有事我们对映射基数还要做出更精确的描述,即对参与联系的实体数目指明相关的最小映射基数 MIN 和最大映
5、射基数 MAX ,用“ min.max”的方式表示。( 2)参与约束:定义:如果实体集 E 中的每个实体都参与联系集 R 的至少一个联系中,我们称实体集 E“完全参与”联系集 R。如果实体集 E 中只有部分实体参与联系集 R 的联系中,我们称实体集E“部分参与”联系集R。在 ER 图中表示时,完全参与用双线边表示,部分参与用单线边表示。2.2.4ER 模型的操作定义:对 ER 图进行的种种变化称为 ER 模型的操作,包括实体类型、联系类型和属性的分裂、合并、增删等等。1 分裂方式分为水平分裂和垂直分裂两种教师号姓名出生日期职务工资奖金教师(1)水平分裂为教师号姓名出生日期职务工资奖金男教师教师
6、号姓名出生日期职务工资奖金女教师( 2)可以把实体相关的属性中常变的属性组成一个实体类型,把固定不变的属性组成另一个实体类型,这就是垂直分裂。教师号姓名出生日期职务工资奖金教师垂直分裂为教师号姓名出生日期教师号职务工资奖金教师教师2 联系也可以分裂,合并是分裂操作的逆过程,合并的联系类型必须是定义在相同的实体类型组合中。2.2.5 采用 ER 模型的数据库概念设计步骤定义:采用ER 模型进行数据库的概念设计,可以分成三步进行:首先设计局部ER 模型,然后把各局部ER 模型纵横成一个全局ER 模型,最后对全局ER 模型进行优化,得到最终的 ER 模型,即概念模型。1 设计局部ER 模型核心思想:
7、“分而治之” ,即分别考虑各个用户的信息需求,形成局部概念结构,然后再综合编辑版 word成全局结构。局部概念结构又叫局部ER 模型,图形称为局部ER 图。每一个应用设计局部 ER 模型的步骤:(1)确定局部结构范围设计各个局部 ER 模型的第一步,确定局部结构的范围划分,划分的方式两种:依据系统的当前用户进行自然划分按用户要求数据库提供的服务归纳成几类,使每一类应用访问的数据显著的不同于其他类,为每类应用设计一个局部ER 模型。(2)定义实体从信息需求和局部范围定义出发,确定每一个实体类型的属性和键。实体、属性和联系之间并无截然区分的界限,划分依据有三种:采用人们习惯的划分避免冗余,在一个局
8、部结构中,对一个对象之取一种抽象形式,不要重复依据用户的信息处理需求实体类型确定之后,他的属性也随之确定。命名反映实体的语义性质,在一个局部结构中应唯一。(3)定义联系ER 模型的“联系”刻画实体之间的关联。分析其中是1:11:MM:N 等。还要考虑实体内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。应注意方式出现冗余的联系(可以从其他联系导出的联系),要尽可能的识别并消除这些冗余联系,一面将这些问题遗留给综合全局的ER 模式阶段,联系类型的命名没有标识符。(4)分配属性1) 确定属性2) 把属性分配到有关实体和联系中去。确定属性的原则是:属性应该是不可再分解
9、的语义单位;实体与属性之间的关系只能是 1: N (一对多)的;不同实体类型的属性之间应无直接关联联系。属性不可分解的要求是为了是模型结构简单化,不出现嵌套结构。当多个实体类型用到同一属性时,将导致数据冗余,从而可能影响储存效率和完整性约束,因而需要确定把他分配给哪个实体类型。一般把属性分配给那些使用频率最高的实体类型,或分配给实体值少的实体类型。有些属性不宜归属于任何一个实体类型,只能说明实体之间联系的特性,应作为联系类型的属性。2 设计全局ER 模型全局概念结构不仅要支持所有局部模型,而且必须合理的表示一个完整、一致的数据库概念结构(或称为视图集成,视图特指局部概念结构)。( 1) 确定公
10、共实体类型在这一步中,我们仅根据实体类型名和键来认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。( 2) 合并局部 ER 模型合并的顺序影响处理效率和结果。建议合并原则:先进行两两合并,先合并那些现实世界中有联系的局部结构合并从公共实体类型开始,最后加入独立的局部结构。编辑版 word进行二元合并是为了减少合并工作的复杂性,后两项原则是为了使合并结果的规模尽可能小。(3)消除冲突冲突的定义:由于各类应用不同,不同的应用通常又由不同的设计人员设计成局部ER 模型,因此局部ER 模型之间不可避免的会有不一致的地方,我们称之为冲突。
11、冲突的三种类型:属性冲突:属性域的冲突,即属性值的类型、取值范围或取值集合不同。结构冲突:同一对象在不同应用中的不同抽象。同一实体在不同应用中可为实体或属性;同一实体在不同局部ER 图中属性组成不同,包括属性个数、次序;实体之间的联系在不同的局部 ER 图中呈现不同的类型。命名冲突:包括属性名、实体名、联系名之间的冲突。同名异义即不同对象具有相同的名字;异名同义,即同意意义的对象具有不同的名字。3 全局 ER 模式的优化一个好的全局ER 模型应该具有能准确、 全面的反映用户功能需求、实体联系的个数尽可能少、实体类型所含属性个数尽可能少、实体类型间联系无冗余。优化原则如下:1) 合并实体类型:
12、这里的实体类型合并不是设计全局ER 模型工作时段的 “公共实体类型的合并” ,而是相关实体类型的合并。在公共模型中实体类型最终转换成关系模式,涉及多个实体类型的信息要通过连接操作获得。因而减少实体类型个数,可以减少连接的开销,提高处理效率一般可以把 1: 1 联系的两个实体类型合并如果需要同时处理一些实体类型,那么有必要它们合并成一个实体类型。但是可能产生大量空值,因此要对储存代价、查询效率进行权衡。2) 消除冗余属性: 各个局部结构中是不允许冗余属性存在的。在综合成全局ER 模型之后,可能产生全局范围内的冗余属性。一般同一非键的属性出现在几个实体类型中,或者一个属性值可以从其他属性的值导出,
13、应该把冗余的属性从全局模型中去掉冗余属性的消除与否,也取决于他对储存空间、访问效率和维护代价的影响。有时为了兼顾访问效率,有意保留冗余属性。这当然会造成储存空间的浪费和维护代价的提高。3) 消除冗余联系:在全局模式中可能存在有冗余的联系,通常利用第三章规范化理论中 函数依赖的概念消除冗余联系。 ( Page51有图举例)2.3 关系模型的基本概念2.3.1 关系模型的基本术语1 用二维表格表示实体集,用关键码表示实体之间联系的数据模型称为关系模型。R字段、数据项丨属性前面为一般术语、后面是关系模式术语记录类型丨关系模式文件丨关系(实例)属性 A、学属性 B、姓名属性 C、年龄属性 D、性别号记
14、录 1、元组 1a1、S001b1、张三c1、20d1、男记录 2、元组 2a2、S002b2、李四c2、18d2、女记录 3、元组 3a3、S003b3、王五c3、17d3、男记录 4、元组 4a4、S004b4、赵六c4、19d4、女编辑版 word数据值为字段值丨数据值为属性值定义字段:称为 属性 、字段值:称为属性值 、记录类型:称为关系模式 。上图中关系模式称为 R。记录:称为 元组 、元租的集合:称为 关系或实例;元组为行、属性为列 。关系中,属性:称为 元数, 元组的个数:称为 基数 。1 关键码由一个或多个属性组成。具体如下:( 1) 超键:在关系中能唯一表示元组的属性集称为关
15、系模式的超键。( 2) 候选键:不含多余属性的超键称为候选键。( 3) 主键:用户选作元组表示的候选键为主键。(4)外键:如果模式R 中属性 K 是其他模式的主键,那么K 在模式 R 中称为外键关系中每一个属性都有一个取值范围,称为属性的值域。属性 A 的取值范围用DOM ( A )表示,每一个属性对应一个值域,不同的属性可对应与同一值域。2.3.2 关系的定义和性质同理与数学中的集合论定义:关系是一个属性数目相同的元组的集合。如果一个关系的元组数目是无限的,则称为无限关系,否则称为有限关系。(由于计算机的储存系统的限制,只限于研究有限关系)。关系是一种规范化了的二维表格,有以下规范性限制:(
16、1)关系中每一个属性值都是不可分解的(2)关系中不晕系出现重复元组(即不允许出现相同的元组)(3)由于关系是一个集合,因此不考虑元组间的顺序,即没有行序(4)元组中的属性在理论上也是无序的,但使用时习惯考虑列的顺序2.3.3 三类完整性规则为了维护数据库中数据与现实的一致性,关系数据库的数据与更新操作必须遵循以下三类完整性规则:(1)实体完整性规则:关系中元组在组成主键的属性上不能有空值 。(2)参照完整性规则: 如果属性集 K 是关系模式 R1 的主键,K 也是关系模式 R2 的外键,那么在 R2 的关系中 ,K 的取值只允许有两种可能,空值或者等于 R1 关系中的某个主键值。这条规则的实质
17、是:不允许引用不存在的实体 。1) 外键和相应的主键可以不同名,只要定义在相同值域上即可2) R1 和 R2 也可以是同一个关系模式,此时表示了同一个关系中不同元组之间的联系3) 外键是否允许空值,应视情况而定上述定义中 R1 称为“参照关系” , R2 为“依赖关系” ;在 PowerBuilder 中称为“主表”、“副表”,在 Visual FoxPro 中称为“父表” 、“子表”。(3)用户定义的完整性规则:用户可以针对具体的数据约束,设置完整性规则,由系来检验实施,以使用统一的方法处理他们,不再由应用程序来承担这项工作。2.4ER 模型到关系模型的转换核心内容!2.4.1ER 图转换成
18、关系模式集的算法转换算法就是:把实体类型、联系模式转换成关系模式(ER 图中主要的成分就是实体类型和联系类型)。算法 2.1 把 ER 图中实体类型和联系类型转换成关系模式的算法有以下三个步骤:编辑版 word步骤 1:(实体类型的转换)将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。步骤 2:(关系类型的转换) :根据不同的情况做不同的处理。二元联系的转换如下:(1)若实体之间的联系是1:1,可以在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键(作为外键)和联系类型的属性。(2)若实体之间的联系是 1: N ,则在
19、 N 端实体类型转换成的关系模式中加入 1 端实体类型的键(作为外键)和联系类型的属性。(3)若实体之间联系是M:N ,则将联系类型也转换成关系模式,其属性为两端实体类型的键(作为外键)加上联系类型的属性,而键为两端实体键的组合。一元联系的转换与步骤2(1)类似 。三元联系的转换如下:(1)若实体之间的联系是1:1: 1,可以在三个实体类型转换成的三个关系模式中任意一个关系模式的属性中加入另两个关系模式的键(作为外键)和联系类型的属性。(2)若实体之间的联系是1: 1:N ,则在 N 端实体类型转换成的关系模式中加入两个1端实体类型的键(作为外键)和联系类型的属性。(3)若实体之间联系是1:M:N ,则将联系类型也转换成关系模式,其属性为 M 端和 N端实体类型的键 (作为外键) 加上联系类型的属性, 而键为 M 端和 N 端实体键的组合。(4)若实体之间联系是M:N :P,则将联系类型也转换成关系模式,其属性为三端实体类型的键(作为外键)加上联系类型的属性,而键三端实体键的组合。2.4.2 采用 ER 模型的逻辑设计步骤关系数据库的逻辑设计的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全培训第一期课件
- 江西高校红色文化课件
- 小班语言十二生肖主题教学
- 幼儿园趣味花纹认知课件设计
- 大学班会安全教育
- 药学专业的社会责任试题及答案
- 安全主题课件
- 汉服文化课件制作软件
- 安全一天一课培训课件
- 软件架构的奥秘:课件设计原理与实践
- 《中国溃疡性结肠炎诊治指南(2023年)》解读
- GB/T 21206-2007线路柱式绝缘子特性
- GB/T 2087-2001圆柱螺旋拉伸弹簧尺寸及参数(半圆钩环型)
- GA/T 1567-2019城市道路交通隔离栏设置指南
- 数字货币MASK发行机制收益制度解读课件
- 2023年BIM工程师继续教育题库含答案【b卷】
- 20章-过渡金属(Ⅰ)-钛钒铬锰讲解课件
- 吹膜机技术和使用说明
- 幼儿园绘本故事:《小熊不刷牙》 课件
- 物质安全数据表(MSDS)(车用尿素溶液)
- 清朝治理新疆地区系统性治理课件(16ppt+视频)2022年新疆地方史读本(中学版)
评论
0/150
提交评论