版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章第六章 实体联系模型实体联系模型 清华大学出版社清华大学出版社 2021年7月4日 实体联系模型实体联系模型(ER模型模型):概念模型设计方法。概念模型设计方法。 教学内容:教学内容: 实体与属性的基本概念实体与属性的基本概念,属性的分类属性的分类,实体和属性实体和属性 的设计的设计; 扩展的实体联系模型的表示方法扩展的实体联系模型的表示方法; 如何使用实体联系模型进行概念设计的方法。如何使用实体联系模型进行概念设计的方法。 1. 1. 实体:实体: 客观存在可以相互区分的事物。客观存在可以相互区分的事物。 一般将实体、实体集、实体类型等概念统称为实体一般将实体、实体集、实体类型等概念统
2、称为实体, 在在ERER模型中的实体相当于实体集。模型中的实体相当于实体集。 在在ERER模型中,模型中,实体用矩形框表示实体用矩形框表示,并将实体名称标注,并将实体名称标注 在矩形框内。在矩形框内。 零零 件件 2. 2. 属性:属性: 实体的某一特征称为属性。实体的某一特征称为属性。 在在ERER模型中模型中, ,用椭圆形表示属性。用椭圆形表示属性。关键属性项加下划线。关键属性项加下划线。 根据属性的类别可分为根据属性的类别可分为基本属性和复合属性两类。基本属性和复合属性两类。 基本属性基本属性是不可再分割的属性。是不可再分割的属性。 复合属性复合属性是可再分解为其他属性的属性是可再分解为
3、其他属性的属性(即属性套属性即属性套属性) , 复合属性形成了一个属性的层次结构。复合属性形成了一个属性的层次结构。 邮政编邮政编 码码 省省( (市市) )名名 地地 址址 区名区名 街街 道道 路名路名门牌号码门牌号码 地址属性的层次结构地址属性的层次结构: 从属性的取值特点,又可分为单值属性和多值属性。从属性的取值特点,又可分为单值属性和多值属性。 单值属性指的是同一实体的属性只能取一个值。单值属性指的是同一实体的属性只能取一个值。 如:同一个学生只能具有一个年龄,所以如:同一个学生只能具有一个年龄,所以年龄属性是年龄属性是 一个单值属性。一个单值属性。 多值属性指同一实体的某些属性可能
4、取多个值。多值属性指同一实体的某些属性可能取多个值。 如如: 一个人的学位是一个多值属性(学士,硕士和博士);一个人的学位是一个多值属性(学士,硕士和博士); 一种零件可能有多种销售价格(经销一种零件可能有多种销售价格(经销,代销代销,批发和零售)。批发和零售)。 下图表示了零件关系的下图表示了零件关系的ER模型。模型。 零件编码零件编码 零零 件件 零件名零件名 供应商供应商 规格规格 进货价进货价 格格 销售价格销售价格 多值属性的表示:多值属性的表示: 多值属性用双椭圆形表示多值属性用双椭圆形表示 用上述方法简单地表示多值属性,在数据库的实施用上述方法简单地表示多值属性,在数据库的实施
5、过程中,过程中,将会产生大量的数据冗余,造成数据库的潜在将会产生大量的数据冗余,造成数据库的潜在 数据异常、数据不一致性和完整性的缺陷。数据异常、数据不一致性和完整性的缺陷。( (存在的问存在的问 题题) ) 如何修改原来的如何修改原来的ERER模型模型: 对多值属性进行变换。通常有下列两种变换方法:对多值属性进行变换。通常有下列两种变换方法: 方法一:方法一: 增加几个新的属性:将原来的多值属性用几个新的属性来表示增加几个新的属性:将原来的多值属性用几个新的属性来表示 。 零件编码零件编码 零零 件件 零件名零件名 供应商供应商 规格规格 进货价格进货价格 销售性质销售性质 销售价格销售价格
6、 规格规格 零件编码零件编码 零零 件件 零件名零件名 供应商供应商进货价格进货价格 经销经销价格价格 代销价格代销价格 批发批发价格价格 零售零售价格价格 变换方法一(变换方法一(a a):): 变换方法一(变换方法一(b b):): 方法二:方法二:增加一个新的实体。增加一个新的实体。 新实体和原来的实体之间是新实体和原来的实体之间是1 1:M M联系。联系。 该新实体依赖于原实体而存在,称之为弱实体。该新实体依赖于原实体而存在,称之为弱实体。 零零 件件 销售价格销售价格 存存 在在 销售销售性质性质 售货售货价价格格 1 M 导出属性导出属性: : 通过具有相互依赖的属性推导而产生的属
7、性。通过具有相互依赖的属性推导而产生的属性。 如如: : 一个人的年龄;某种零件的平均销售价格。一个人的年龄;某种零件的平均销售价格。 导出属性的值不仅可以从其他属性导出,也可以从有关导出属性的值不仅可以从其他属性导出,也可以从有关 的实体导出。的实体导出。 如如: : 一个学校的学生总人数。一个学校的学生总人数。 导出属性用虚线椭圆形与实体相连。导出属性用虚线椭圆形与实体相连。 学号学号 学学 生生 姓名姓名 性别性别年龄年龄 家庭地址家庭地址 所学专业所学专业 总人数总人数 (4)空值)空值:NULL 空值可以有多种表示含义:空值可以有多种表示含义: 假定某个员工的配偶值处填上空值,则至少
8、有以下假定某个员工的配偶值处填上空值,则至少有以下3种可种可 能:能: 该员工尚未婚配,表示无意义(这是占位空值)该员工尚未婚配,表示无意义(这是占位空值) 该员工已婚配,但配偶名字未知(这是未知空值)该员工已婚配,但配偶名字未知(这是未知空值) 该员工是否婚配不得而知该员工是否婚配不得而知 2 2 实体和联系的设计和实现实体和联系的设计和实现 联系的元数联系的元数: : 联系的连通词联系的连通词: : 联系的基数:联系的基数: 相互联系的实体的个数。相互联系的实体的个数。 涉及到的实体集之间实体对应的方式。涉及到的实体集之间实体对应的方式。 有两个实体集有两个实体集E1和和E2,E1中的每个
9、实体与中的每个实体与 E2中有联系实体数目的最小值中有联系实体数目的最小值Min和最大值和最大值Max,称为,称为 E1的基数,用(的基数,用(Min,Max )表示。)表示。 1. 一元联系一元联系 一元联系是在同一个实体内部存在的联系,也称为一元联系是在同一个实体内部存在的联系,也称为 递归联系。递归联系。 一元联系连通词有三种形式一元联系连通词有三种形式: : 1 1:N N联系:联系: 实现时,只需用一个关系模型(表)。实现时,只需用一个关系模型(表)。 1 1:1 1联系:联系: 实现时,只需用一个关系模型(表)。实现时,只需用一个关系模型(表)。 M M:N N联系联系: : 实现
10、时,需用两个关系模型(表)。实现时,需用两个关系模型(表)。 职工之间的上下级联系是职工之间的上下级联系是1:N联系。联系。 运动员根据其得分来排定名次。在名次排列中运动员根据其得分来排定名次。在名次排列中, 排在他前面只有一个人排在他前面只有一个人,排在他后面也只有一人。排在他后面也只有一人。 工厂的零件之间存在组合关系,一种零件有许工厂的零件之间存在组合关系,一种零件有许 多种子零件组成,而一种零件也可以是其他零件的子零件。多种子零件组成,而一种零件也可以是其他零件的子零件。 则则“零件零件”就是一种递归实体。就是一种递归实体。 关系模型:关系模型: 职工职工(工号工号,姓名,年龄,性别,
11、经理工号,姓名,年龄,性别,经理工号) 运动员运动员( 运动员编号运动员编号,姓名,年龄,性别,姓名,年龄,性别, 名次,名次,上一名次运动员编号,上一名次运动员编号, 下一名次运动员编号下一名次运动员编号) 零件零件(零件号零件号,零件名,规格),零件名,规格) 组成组成(零件号零件号,子零件号,数量),子零件号,数量) 职职 工工 领领 导导 1N 运动员运动员 名名 次次 11 零件零件 组组 成成 M N 数量 2. 2. 二元联系二元联系: : 存在于两个不同的实体之间。存在于两个不同的实体之间。 二元联系连通词也有三种形式:二元联系连通词也有三种形式: 1 1:1 1联系:联系:学
12、校和正校长之间是学校和正校长之间是1 1:1 1联系。联系。 学学 校校 有有 正校长正校长 1 1 转换为关系模型时:转换为关系模型时: 可在两个实体类型转换成的两个关可在两个实体类型转换成的两个关 系模式中的任意一个关系模式的属性系模式中的任意一个关系模式的属性 中加入另一个关系模式的键和联系类中加入另一个关系模式的键和联系类 型的属性型的属性; ; 实现时实现时: :需用二个关系模型(表)。需用二个关系模型(表)。 1 1:N N联系:联系:班级和学生之间是班级和学生之间是1 1:N N联系。联系。 转换为关系模型时:转换为关系模型时: 在在N N端实体类型转换成的端实体类型转换成的 关
13、系模式中加关系模式中加1 1端实体类型端实体类型 转换成的关系模式的键和键转换成的关系模式的键和键 和联系类型的属性。和联系类型的属性。 实现时实现时: :需用二个关系模型(表)需用二个关系模型(表). . 班班 级级 组组 成成 学学 生生 1 N M M:N N联系:联系:教师和课程之间存在教师和课程之间存在M M:N N关系。关系。 联系类型也转换成关系模式,联系类型也转换成关系模式, 其属性为两端实体类型的键加上其属性为两端实体类型的键加上 联系类型的属性,而键为两端实联系类型的属性,而键为两端实 体键的组合。体键的组合。 实现时实现时: :需用三个关系模型(表)需用三个关系模型(表)
14、. . 课课 程程 教教 师师 讲讲 授授 学时学时 数数 N M 学学 校校 有有 正校长正校长 1 1 班班 级级 组组 成成 学学 生生 1 N 课课 程程 教教 师师 讲讲 授授 学时数学时数 N M 3. 3. 三元联系:三元联系:存在于三个不同的实体之间。存在于三个不同的实体之间。 例例: : 某超市公司有若干仓库,若干连锁商店,供应若干商品,某超市公司有若干仓库,若干连锁商店,供应若干商品, 商店里有若干收银员;商店里有若干收银员; 收银员收银员商品商品 顾顾 客客 销销 售售 数量数量 1 P 1 商店商店 商品商品 仓仓 库库 进进 货货 数数 量量 M NP 顾客、商品和收
15、银员顾客、商品和收银员 之间存在销售联系:之间存在销售联系: 仓库、商店和商品仓库、商店和商品 之间存在进货联系之间存在进货联系 联系的基数:联系的基数: 有两个实体集有两个实体集E1E1和和E2E2,E1E1中的每个实体与中的每个实体与E2E2中有联系实体数目的中有联系实体数目的 最小值最小值MinMin和最大值和最大值MaxMax,称为,称为E1E1的基数,用(的基数,用(Min,Max Min,Max )表示。)表示。 例:规定每个学生每个学例:规定每个学生每个学 期至少选修期至少选修1 1门课程,最多门课程,最多 选修选修6 6门课程门课程; ;每门课程最每门课程最 多多9090个学生
16、个学生, ,可以没人选。可以没人选。 学学 生生 选选 课课 课课 程程 M (1,6) (0,90) NN 1(0,3) (1,1) 教教 师师 讲讲 授授 课程课程 1 (0,3) (1,1) N 每位教师最多教授每位教师最多教授3门课门课 也可不上课;每门课程必须也可不上课;每门课程必须 有一位老师上。有一位老师上。 1. 1. 依赖联系与弱实体依赖联系与弱实体 (1 1)依赖联系)依赖联系 某些实体对于另一些实体具有很强的依赖联系。某些实体对于另一些实体具有很强的依赖联系。 即一个实体的存在必须以另一实体的存在为前提。即一个实体的存在必须以另一实体的存在为前提。 如,一个职工可能有多个
17、社会关系,社会关系是多值属性;如,一个职工可能有多个社会关系,社会关系是多值属性; 为了消除冗余,设计两个实体:职工与社会关系。为了消除冗余,设计两个实体:职工与社会关系。 在职工与社会关系中在职工与社会关系中,社会关系的信息是以职工信息的存在为前社会关系的信息是以职工信息的存在为前 提。因此社会关系的存在是以职工的存在为前提,所以职工与社提。因此社会关系的存在是以职工的存在为前提,所以职工与社 会关系是一种依赖联系。会关系是一种依赖联系。 3 扩展的实体联系模型的表示方法扩展的实体联系模型的表示方法 (2 2)弱实体)弱实体: : 一个实体对于另一些实体具有一个实体对于另一些实体具有 很强的
18、依赖联系,而且该实体的很强的依赖联系,而且该实体的 主码部分或全部从其父实体中获主码部分或全部从其父实体中获 得。得。 在在ER模型中,模型中,弱实体用双线矩形弱实体用双线矩形 框表示。与弱实体联系的联系,用双框表示。与弱实体联系的联系,用双 线菱形框表示。线菱形框表示。 顾顾 客客 地地 址址 通通 讯讯 职职 工工 社会关系社会关系 存在存在 1 1 N N 存在依赖性与弱实体的实例存在依赖性与弱实体的实例: : 职工号职工号姓名姓名 职工号职工号称呼称呼姓名姓名 政治面貌政治面貌 101101程程 宏宏 101101父亲父亲程资明程资明党员党员 106106蒋天云蒋天云 101101母亲
19、母亲 林林 悦悦党员党员 103103李刚畸李刚畸 103103父亲父亲李坚青李坚青群众群众 103103母亲母亲吴吴 颖颖党员党员 (1)(1)实体(学生)实体(学生) (2 2)弱实体(社会关系)弱实体(社会关系) 2. 2. 超类和子类超类和子类 定义定义: : 当较低层上实体类型表达了与之联系的较高层当较低层上实体类型表达了与之联系的较高层 上的实体类型的特殊情况时,就称较高层上实体类型为超上的实体类型的特殊情况时,就称较高层上实体类型为超 类型(类型(supertypesupertype),较低层上实体类型为子类型(),较低层上实体类型为子类型( subtypesubtype)。)。
20、 在在ER图中,图中,带有子类的实体类型(即超类)以两端双线的矩带有子类的实体类型(即超类)以两端双线的矩 形框表示,并用加圈的弧线与其子类相连,子类本身仍用普通矩形框表示,并用加圈的弧线与其子类相连,子类本身仍用普通矩 形框表示。形框表示。 例例: : 学校人事系统中实体之间的联系可用学校人事系统中实体之间的联系可用下下图表示图表示: : 人员人员 教师教师 学生学生 本科生本科生研究生研究生 子类与超类有两个性质子类与超类有两个性质: : 子类与超类之间具有继承性特点子类与超类之间具有继承性特点,即子类实体继,即子类实体继 承超类实体的所有属性。但子类实体本身还可以包含承超类实体的所有属性
21、。但子类实体本身还可以包含 比超类实体更多的属性。比超类实体更多的属性。 这种这种继承性是通过子类实体和超类实体有相同的继承性是通过子类实体和超类实体有相同的 实体标识符实现的实体标识符实现的。 学校人事系统中学校人事系统中的的实体转换成的关系模式实体转换成的关系模式: 人员(人员(身份证号身份证号,姓名,年龄,性别),姓名,年龄,性别) 教师(教师(身份证号身份证号,教师编号,职称),教师编号,职称) 学生(学生(身份证号身份证号,学号,系别,专业),学号,系别,专业) 本科生(本科生(身份证号身份证号,入学年份),入学年份) 研究生(研究生(身份证号身份证号,研究方向,导师姓名),研究方向
22、,导师姓名) 这里,这里,子类和超类转换成关系模式的的主键相同。子类和超类转换成关系模式的的主键相同。 在在DBS运行时运行时,系统有一个系统有一个“系统目录系统目录”,用于存放数据库结用于存放数据库结 构的描述。构的描述。关系关系DBMS的系统目录存储下列信息的系统目录存储下列信息: 关系名关系名,属性名属性名,属性域属性域(数据类型数据类型) 主键主键,辅助键辅助键,外键外键 各种约束各种约束:视图的外部级描述视图的外部级描述,存储结构和索引的内部级描述存储结构和索引的内部级描述 安全性和授权规则安全性和授权规则 数据完整性规则数据完整性规则 由于由于DBMS的各个子系统非常频繁地访问系统目录的各个子系统非常频繁地访问系统目录, 因此对系统目录应设计比较好的数据结构以满足高效因此对系统目录应设计比较好的数据结构以满足高效 地访问目录。地访问目录。 关系系统中目录结构关系系统中目录结构(部分部分)的一个扩充的的一个扩充的ER图图: N 索引名索引类 型 R_I 外键R_FK_ I 属性 属性 名 数据类 型 R_A 键 K_ A 基本关系 视图关系 关系 关系 名 d R_ K 键编 号 键类 型 I_A 索引 V_A 视图属性 属性 名 属性序 号 1 N N 1 N1 1 1 1 1 1 N 1 N 查询 导师导师 班级班级 学生学生 组成组成 管理管理班主任班主任 档案材
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年喉癌术后出院康复指导与发音训练
- 2026年工人岗前消防安全三级教育
- 2026年村卫生室常见病多发病诊疗规范
- 2026年西瓜枯萎病、炭疽病及瓜蚜防治用药
- 线上数据标注兼职2026年商业秘密保护措施协议范本
- 2026年医院消防安全检查要点与应急预案
- 2026年欧阳询书法艺术讲座课件
- 香道馆茶艺表演服务协议2026年
- 产品迭代项目团队激励协议
- 儿童乐园幼儿游乐设施安全检查协议
- 2026浙江大学“一带一路”国际医学院行政部门招聘2人备考题库(2026年第6批)附答案详解(培优)
- 2026年江西省水投工程咨询集团有限公司社会招聘11人笔试备考试题及答案解析
- 2026上海市大数据中心招聘10名笔试模拟试题及答案解析
- 河北省秦皇岛市海港区2025-2026年九年级下一模化学试卷(含答案)
- 黑龙江省哈尔滨市南岗区2026年中考一模语文试题(含答案)
- GB/Z 177.9-2026人工智能终端智能化分级第9部分:耳机
- 2026年惠州招聘公开考试试题
- 岭美版(2024)小学美术一年级下册《画笔下的山河》教学课件
- 2025年湖北武汉市八年级地生会考考试题库(含答案)
- 2026年中国烟草招聘笔试行政职业能力测验专项
- AQ3062-2025《精细化工企业安全管理规范》专项检查表
评论
0/150
提交评论