E-R图和关系数据库设计

合集下载

数据库E-R图

数据库E-R图

基本任务
消除不必要的冗余,设计生成基本E-R图
分E-R图
合并 初步E-R图 可能存在冗余的数据 和冗余的实体间联系 消除不必要的冗余
基本E-R图
1.冗余 消除不必要的冗余后的初步E-R图称为基本E-R图。 分析法消除冗余实例:
(1)例,教师工资单中包括该教师的基本工资、各种 补贴、应扣除的房租水电费以及实发工资。由于实发 工资可以由前面各项推算出来,因此可以去掉,在需 要查询实发工资时根据基本工资、各种补贴、应扣除 的房租水电费数据临时生成。 (2) 教室实体与班级实体的上课联系可以由教室与课程 之间的开设联系、课程与学生之间的选修联系、学生与 班级之间的组成联系三者推导出来,因此属于冗余联系, 可以消去。
3)M:N的联系,即多对多的联系 A中任意实体至少有一个实体对应B中的多个实体, 反之B中的任意实体至少有一个实体对应A中的多 个实体。 “学生”(A)是一种实体,“课程”(B)也是一种 实体。这两种实体之间存在一种联系,设这种联系 命名为“选课”,表示的是哪一个学生修了哪些门 课程。这个联系是M:N的,也就是说,一个学生 可以修多门课程,一门课程可以有多个学生来修, 但一个学生不一定修所有的课程,一门课程也不一 定被全部学生所选修。在E-R图中,这两种实体间 的联系可以表示如下图
1
拥有 成绩 m m 学生 选修 n
在E-R图中概念及术语 (1)实体与实体类型 实体:可以相互区别客观事物和概念的统一抽象。 是任何一种我们所关心的“事物”,可以指人,也 可以指物,可以是实际的东西,也可以是抽象的、 概念性的东西。 例 学生、回扣、医疗等。实体分为两级,一级为 “个体”,如“张三”、“国防科技大学”等;另 一级为“总体”,泛指某一类个体组成的集合,如 人泛指“张三”、 “李四”等。实体类型:将具 有共性的一类实体抽象为实体类型。在E-R图中, 实体这种基本成份用方框来表示。

数据库设计中的ER图和UML图的区别

数据库设计中的ER图和UML图的区别

数据库设计中的ER图和UML图的区别数据库设计是现代企业应用开发中非常重要的一个环节。

在数据库设计中,设计师会使用两种不同的图形工具来描述数据模型的结构和关系。

这两种工具分别是ER图和UML图。

尽管这两种图形工具都是用来描述数据模型,但它们都有很大的不同点。

一、ER图简介ER图是一种流行的用于描述数据模型的图形工具。

它是由彼得·钱(Peter Chen)于1976年首次提出的。

ER是Entity-Relationship(实体-关系)的缩写。

在ER图中,实体用矩形表示,并且它们之间用菱形表示关系。

实体之间的关系可以是一对一(1:1)、一对多(1:N)或者多对多(M:N)。

每个实体都有一个唯一的标识符,它对应于数据库表中的主键。

二、UML图简介UML图是另一种常用的描述数据模型的图形工具。

UML是Unified Modeling Language(统一建模语言)的缩写,它是由Object Management Group(OMG)发布的一种标准。

UML图有多种类型,其中用于描述数据模型的主要类型是类图。

在类图中,类用矩形表示,它们之间用关联表示关系。

类之间的关系可以是一对一(1:1)、一对多(1:N)或者多对多(M:N)。

每个类都有一个唯一的标识符,它对应于数据库表中的主键。

三、ER图与UML图的区别1. 目的不同ER图主要用于描述数据库中的实体和实体之间的关系。

它通常被用在关系数据库的设计中,以便设计师能够更好地理解数据之间的关系。

UML图可以用于描述任何类型的面向对象软件,包括业务逻辑,用户界面和系统架构等。

2. 图形元素的不同ER图中只有实体、关系和属性等基本元素。

UML图中有类、接口、对象、组件等复杂的元素。

3. 语法不同在ER图中,当一个实体有多个属性时,它们通常被表示为一个矩形。

在UML图中,每个属性都显示为一个单独的属性框。

4. 可读性不同ER图有明确的语法规则和标准符号,它相对简单,易于理解。

数据库系统E-R图设计知识点汇总

数据库系统E-R图设计知识点汇总

数据库系统E-R图设计知识点汇总数据库系统 ER 图设计知识点汇总在数据库系统的设计中,ER 图(EntityRelationship Diagram,实体联系图)是一种非常重要的工具。

它能够帮助我们清晰地理解和描述系统中各个实体之间的关系,为数据库的构建提供坚实的基础。

下面就让我们一起来详细了解一下数据库系统 ER 图设计的相关知识点。

一、ER 图的基本概念ER 图主要由实体、属性和联系这三个要素组成。

实体是指具有独立存在意义的事物,比如“学生”“课程”“教师”等。

在 ER 图中,实体通常用矩形来表示。

属性则是用来描述实体的特征,比如学生的“学号”“姓名”“年龄”等。

属性在 ER 图中用椭圆来表示。

联系反映了不同实体之间的关系,比如学生与课程之间的“选课”关系。

联系在 ER 图中用菱形来表示,并在菱形中标注联系的名称。

二、ER 图中的实体类型实体可以分为强实体和弱实体。

强实体是指不依赖于其他实体而独立存在的实体,其标识符完全由自身的属性决定。

弱实体则是依赖于其他强实体而存在的实体,它的标识符部分或全部来自于其所依赖的强实体。

三、ER 图中的联系类型联系主要有一对一(1:1)、一对多(1:N)和多对多(M:N)这三种类型。

一对一联系,例如一个人只有一个身份证,一个身份证只对应一个人。

一对多联系,比如一个班级有多个学生,而一个学生只能属于一个班级。

多对多联系,像学生和课程之间,一个学生可以选择多门课程,一门课程也可以被多个学生选择。

四、ER 图的绘制原则在绘制 ER 图时,需要遵循一些原则,以确保图形的清晰和准确。

首先,要明确系统的需求,准确识别出实体、属性和联系。

其次,尽量简化图形,避免出现过于复杂的关系,使读者能够一目了然。

同时,要确保实体和联系的名称具有明确的含义,能够准确反映其代表的对象和关系。

五、ER 图到关系模式的转换这是将 ER 图转化为数据库中可实现的关系模式的关键步骤。

对于实体,通常将其转换为一个关系表,表的列就是实体的属性。

数据库设计过程中E-R图向关系模型的转换

数据库设计过程中E-R图向关系模型的转换

其中 为关 系名
,
,
为组 成该 关系的属 性名 集合
。 ,
为属 性组



中属 性所 来 自的域 图 的基本 要 素是 实体 型

为属 性间 的数据 依赖 关系集合 图为例
构成
三丰

属性 和 联 系
,
,
其表 示方 法为
比如 学 生张
下面 将 以本文 上 述 的 一 在由

完 成卜 图 向关系模型 的转换
姓名
,
年龄
,
性别
,
班级 编号林
班级 名称
人数
两种 转换 结 果均 可 以最 终 实现 一 对一 的对 应 关 系 由 的对 应关 系
,

对应 关系 班级编 号 学号
, ,
图中 的两上 数 字 不要 省 略 对应 关 系
它是

图中 明确表 示两 个 实体 间
把 两个 实体 写 成 关系模 型 的形式 班级 学生 班级 学生 班级 名称
但 却 与 关 系 的码 相 对
学号
,

性别

用菱 形表 示
都是属 性 菱形框 内写 明联 系名
,

则称 是 的外部 码
,
并用 无
, 。
接下 来 完 成转换 过程 把两 个 实体写 成关 系模型的形 式 班长 班级 班长 班级 学号
,
向边分 别 与 有关 实 体 连接起 来 或

同 时在无 向边旁标上 联系 的 类型 学生选课 存在选 课关 系
的对 应 关系
, , ,
人数
,
学 生 姓名
,

数据库——数据库设计E-R图向关系模型的转换

数据库——数据库设计E-R图向关系模型的转换

数据库——数据库设计E-R图向关系模型的转换1、将下列物资管理E-R图转换为关系模式:转换原则⒈ ⼀个实体型转换为⼀个关系模式。

关系的属性:实体型的属性关系的码:实体型的码⒉ ⼀个m:n联系转换为⼀个关系模式(初步,以后可能调整)。

关系的属性:与该联系相连的各实体的码以及联系本⾝的属性关系的码:各实体型码的组合⒊ 1:n联系---与n端对应的关系模式合并在n端关系中加⼊1端关系的码和联系本⾝的属性⒋ ⼀个1:1联系,可以与任意⼀端对应的关系模式合并。

⒌ 3个或3个以上实体间的⼀个多元联系转换为⼀个关系模式。

关系的属性:与该多元联系相连的各实体的码以及联系本⾝的属性关系的码:各实体码的组合供应(供应商号,项⽬号,零件号,供应量)⒍ 同⼀实体集的实体间的联系,即⾃联系,也可按上述1:1、1:n和m:n三种情况分别处理。

⒎ 具有相同码的关系模式可合并。

⽬的:减少系统中的关系个数1.⼀个实体型转换为⼀个关系模式:供应商(供应商号,姓名,地址,电话号,账号)2.⼀个实体型转换为⼀个关系模式:项⽬(项⽬号,预算,开⼯⽇期)3.⼀个实体型转换为⼀个关系模式:零件(零件号,名称,规格,单价,描述)4. 3个或3个以上实体间的⼀个多元联系转换为⼀个关系模式。

供应(供应商号,项⽬号,零件号,供应量)5.⼀个实体型转换为⼀个关系模式:仓库(仓库号,⾯积,电话号)6. ⼀个实体型转换为⼀个关系模式。

1:n联系---与n端对应的关系模式合并。

(1:n⼯作联系)同⼀实体集的实体间的联系,即⾃联系,也可按上述1:1、1:n和m:n三种情况分别处理。

(职⼯与领导职⼯的⾃联系)职⼯(职⼯号,姓名,年龄,职称,仓库号,领导职⼯号)7. ⼀个m:n联系转换为⼀个关系模式。

库存(仓库号,零件号,库存量)2019/6/19更新后天考试,这⾥再给出两道课本样题1.学校中有若⼲系,每个系有若⼲班级和教研室,每个教研室有若⼲教员,其中有的教授和副教授每⼈各带若⼲研究⽣; 每个班有若⼲学⽣, 每个学⽣选修若⼲课程, 每门课可由若⼲学⽣选修。

关系型数据库设计——E-R图

关系型数据库设计——E-R图

关系型数据库设计——E-R图⼀、数据管理技术的三个发展阶段:1)⼈⼯管理阶段(20世纪50年代中期)特点:数据不保存;应⽤程序管理数据;数据不共享;数据没有独⽴性;2)⽂件系统阶段(20世纪50年代后—60年代)特点:数据以⽂件形式长期保存;⽂件系统管理数据;数据共享性差、冗余度⼤;数据独⽴性差;3)数据库系统阶段(20世纪60年代—现在)特点:数据结构化;数据由DBMS统⼀管理与控制;数据共享性⾼、冗余度低;数据独⽴性⾼;⼆、数据库管理系统的功能:1)数据定义功能:由DBMS提供的数据定义语⾔(Data Definition Language,DDL)定义数据库中的数据对象。

2)数据操纵功能:由DBMS提供的数据操纵语⾔(Data Manipulation Language,DML)实现对数据库的查询、插⼊、删除和修改;3)数据控制功能:由DBMS提供的数据控制语⾔(Data Control Language,DCL)实现数据保护和事务管理的功能,包括完整性、安全性、并发控制和数据库恢复;4)数据库的建⽴与维护功能三、概念模型(也称信息模型)——E-R图(Entity-Relationship Diagram)概念结构设计即对现实世界进⾏抽象描述,在需求分析所得数据流图和数据字典的基础上,为计算机存储做准备;概念结构设计的内容即建⽴概念模型;描述概念模型最常⽤⽅法是E-R图或UML图⽅法。

主要概念:实体(Entity):客观存在的各类事物;属性(Attribute):实体所具有的特性;联系(Relationship):不同实体集中实体之间的联系,也可以是同⼀实体集中实体间的联系;联系的种类:1:1联系;1:N联系;M:N联系⽤E-R图建⽴概念模型局部的E-R图⼜称为局部视图,将多个局部视图E-R图合并成⼀张完整的E-R图的过程称为视图集成。

视图集成过程中可以解决冲突和消除冗余;分E-R图之间的三类冲突:1)属性冲突2)命名冲突3)结构冲突:同⼀实体在不同的分E-R图中有不同的属性,同⼀对象在某⼀分E-R图中被抽象为实体⽽在另⼀分E-R图中⼜被抽象为属性,需要统⼀;四、逻辑结构设计——E-R图向关系模型的转换1)⼀个实体转换为⼀个关系模式;实体的属性——>关系的属性实体标识符——>关系的码2)联系的转换1:1联系——与任意⼀端对应的关系模式和并;1:n联系——与n端对应的关系模式合并;m:n联系——⼀个独⽴的关系模式五、关系模式的优化从以下⼏⽅⾯:1)关系模式规范化2)对关系模式进⾏必要的合并3)进⾏合理的分解,包括⽔平分解、垂直分解六、关系模式的存取⽅法选择DBMS常⽤存取⽅法:1)索引⽅法,⽬前主要是B+树索引⽅法2)聚簇(cluster)⽅法3)Hash⽅法七、SQL数据库的三级结构/两级映像三级模式体系结构:两级映像:外模式/模式映像模式/内模式映像1)数据的逻辑独⽴性应⽤程序(外模式)与数据库的逻辑结构(模式)是相互独⽴的,即数据的逻辑结构发⽣改变,应⽤程序不⽤变。

e-r图设计数据库

e-r图设计数据库

e-r图设计数据库E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。

构成E-R图的基本要素是实体型、属性和联系,其表示方法为:·实体型(Entity):用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。

如果是弱实体的话,在矩形外面再套实线矩形。

·属性(Attribute):用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。

如果是多值属性的话,再椭圆形外面再套实线椭圆。

如果是派生属性则用虚线椭圆表示。

·联系(Relationship):用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。

比如老师给学生授课存在授课关系,学生选课存在选课关系。

如果是弱实体的联系则在菱形外面再套菱形。

两个不同实体间的1:n关系上图中表示的是一辆汽车与零件之间的1:n关系,一辆汽车由许多个零件构成。

“汽车”这个实体具有型号、单价和牌号等属性,“零件”这个实体具有名称、单价和厂家等属性,“数量”是它们之间的关系“组成”的一个属性。

当然E-R图还可以表示1:1关系,例如夫妻关系以及姓名与学号间的关系等。

E-R图还可以表示m:n关系,例如教材中中讲的“学生”与“课程”之间通过“学习”联系,一个学生要学习多门课程,反之同一门课程有很多学生在学习。

在E-R图中,有时为了使其简洁明了,图中可以略去各属性,着重表示实体间的联系情况,而属性可以单独以表格形式单独列出。

4.E-R图的设计E-R图的设计虽然没有一个绝对固定的方法,但一般来说应遵循以下两条基本原则:(1)首先要针对每一个用户做出该用户信息的局部E-R图,确定该用户视图的实体、属性和联系。

[注意]在设计E-R图时,能作为属性的就不要作为实体,这样有利于E-R图的简化。

数据库系统(四)---关系型数据库设计及E-R图

数据库系统(四)---关系型数据库设计及E-R图

数据库系统(四)---关系型数据库设计及E-R图1、关系型数据库: 关系型数据库是⼀类采⽤关系模型作为逻辑数据模型的数据库系统,遵从数据库设计的基本步骤,包括:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库的运⾏和维护等阶段。

概念结构设计与逻辑结构设计是关系数据库整个设计过程的关键。

2、关系数据库设计过程与各级模式 在关系数据库设计的不同阶段,会形成数据库的各级模式。

1)需求分析阶段,综合各个⽤户的应⽤需求; 2)概念结构设计阶段,形成独⽴于机器特点、独⽴于各个关系数据库管理系统产品的概念模式; 3)逻辑结构设计阶段,将 E-R 图转换成具体的数据库产品⽀持的关系数据模型,形成数据库逻辑模式,然后根据⽤户处理的要求、安全性的考虑,在基本表的基础上再建⽴必要的视图,形成数据的外模式; 4)物理结构的设计阶段,根据关系数据库管理系统的特点和处理的需要,进⾏物理存储安排,建⽴索引,形成数据库内模式。

3、概念结构设计⽅法 关系数据库的概念结构设计通常采⽤⾃顶向下法,它通过两个步骤来完成概念设计,⾸先建⽴局部信息结构,然后将局部信息结构合成为全局信息结构并优化,使⽤ E-R 图作为概念模型的描述⼯具。

1)局部信息结构设计 局部信息结构设计:根据需求分析报告中标明的不同⽤户视图范围所建⽴的满⾜该范围内⽤户需求的信息结构,称为局部信息结构。

局部信息结构设计的步骤包括:确定局部范围;选择实体;选择实体关键字;确定实体间联系;确定实体的属性。

2)E-R 图的表⽰⽅法 概念结构设计就是将需求分析得到的⽤户需求抽象为信息结构的过程,通常使⽤ E-R 图来作为描述现实世界的建模⼯具。

E-R 图提供了表⽰信息世界中实体、属性和联系的⽅法。

1.实体型,⽤矩形表⽰,写明实体的名称; 2.属性,⽤椭圆形表⽰,并⽤⽆向边将其与其相应的实体连接起来。

3.联系,⽤菱形表⽰,写明联系的名称,⽤⽆向边分别与有关实体连接起来,同时在⽆向边旁标注联系的类型(1:1、1:N 或 M:N),如果⼀个联系具有属性,则这些属性也要⽤⽆向边与该联系连接起来。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2.3 关系数据库设计 理论基础
概述
• 关系数据库设计的核心是关系模式的设计, 即按照一定的原则,从数量众多而又相互 关联的数据中,构造出一组既能较好地反 映现实世界、又具有良好性能的关系模式。
关系范例的描述
• SCT (S # , C # , CN , GRADE , TNAME , BDATE,SALARY).
• CUSTOMER (cus-no, cus-name) • ORDER(order-no, order-date, cus-no) – 其中,对于关系ORDER,属性cus-no是外来关键字。
转换规则3
• 1∶1的联系也可以类似处理。如果1∶n的n一方 的实体是部分参与联系,为了避免在转换后的关 系中的外来关键字出现空值(NULL),可以分别 把实体集和联系集按照规则1、2转换成关系。
民航航班管理数据模型
实体集之间的联系集定义如下: (1)ISA(PILOTS,PERSONNEL) 用于指
明具体的飞行员个人,它是一对一联系。 ( 2 ) BOOKED-ON(PASSENGERS ,
DEPARTURES) 表示订票,它是多对多联系。 ( 3 ) INSTANCE-OF(DEPARTURES ,
是对参与联系的实体的一种约束。一个 联 系 的 基 数 ( Cardinality ) 是 指 , 对 应 于 该联系的另一方的实体集的单个实体,本 实体集的实体的数量。
ER模型支持的实体之间的一对一、一对 多、多对多的联系。
基数比约束示例
参与约束
• 参与约束是对实体参与度的约束。在一个给定的联 系中的实体称为该联系的参与者。 •所谓实体参与度是指实体参与联系的最小和最大的 次数。参与的次数可以用一个整数偶对(min , max) 来表示,其中min和max分别是实体参与联系的最小 和最大的次数。
product-no, order-no,quantity-order)
转换规则3
• 规则3:如果一个联系集的两侧标明的基数比是 1∶N(一对多联系),且联系无自身的属性,则 在1侧的实体集的关键字应加入到另一侧的实体转 换成的关系中,联系集本身可不必单独转换成关 系。
• 例如下图实体集CUSTOMER的关键字应加入到对 应于实体集ORDER的关系中去。经过转换后可得 关系模式为:
民航航班管理数据模型
•实体集3 航次DEPARTURES 属性: 日期DATE:INT(3) 本实体集的每一个实体是在某日起飞的航次。
•实体集4 机型PLANES 属性: 制造厂 MANUFACTURER:CHAR(10)
型号MODEL-NO:CHAR(10) 这两个属性组成实体集的关键字。 •实体集5 飞机AIRCRAFT 属性: 序号SERIAL-NO:INT(5)
• 即对于关系模式R中的属性子集X的每一个值,任 何时候都只有一个确定的Y值与之对应。
函数依赖示意图
GRADE S#
CN
C#
TNAME
BDATE SALARY
• 但是S#和C#、S#和TNAME间不存在函 数依赖关系。
函数依赖(2)
•在R(U)中,如果X→Y,并且对于X的任何
真子集X ’都有X ’ Y,则称Y完全函数依
【转换示例】
由上述实体集和联系集构成的ER图如图 所示,它所转换成的关系模型具有如下5个 关系:
• PLAYERS (NAME,BPLACE,BDATE) • TEAMS (TEAM-NAME,CITY,YEAR) • POSITIONS (POSNAME,POSNUMBER) • PLAYS (NAME,POSNAME) • SEASON (NAME,TEAM-NAME,YEAR,BA)
【示例】改进
如果把SCT分为如下三关系模式:
• 选课关系:SC(学号,课程号, 成绩) • 课程关系:C(课程号,课程名,教师姓名) • 教师关系:T(教师姓名,教师出生日期,工资)
则上述问题便都得到解决。
函数依赖(1)
• 设R(U)是属性集U上的一个关系模式,X和Y均为 U={A1,A2,…,An}的子集,r为R的任一个关系。 如果对于r中的任意两个元组u、v,只要有u[X]= v[X ],就有u[Y]=v[Y],则称X 函数决定Y或称Y 函数依赖于X,记为X →Y。其中X 称为决定因素 (Determinant)。
民航航班管理数据模型
•实体集6 职工 PERSONNEL 属性: 职工号 EMP-NO:INT(6) 姓名NAME:CHAR(30) 住址ADDRESS:CHAR(30) 工资SALARY:INT(6) 职工号EMP-NO是本实体集的关键字。
•实体集7 飞行员 PILOTS 实体集PILOTS 无属性。
IS-A 1
PILOTS n
CAN-FLY m
PLANES 1
TYPE n
AIRCRAFT
SALARY EMP-NO
MODELNO
实体间的依赖
• 如果一个实体集合的存在与否是依赖于另一个实 体集合的,那么称这两个实体集合之间存在依赖 关系。【例】家属和职工、病房和医院
• 前者称为依赖实体集合,又叫作弱实体集合可用 双矩形框表示弱实体集合(或用带圆角的矩形框 表示)。
– 对于汇集和维护企业组织的数据有重要意义的、确定的、可以 标识的对象可以指定为实体;
– 每个实质性的确定的对象,如人员、位置、事物等可指定为实 体;
– 抽象概念如部门或通信干线等可指定为实体; – 在由唯一的术语标识的环境中的非实质性的概念,也可指定为
实体,例如信用货款备忘录中的信用度,可作为一个实体。
ER图示例
民航航班管理数据模型
首先选择实体集及相应的属性。为表示方便, 约定如下符号: • CHAR(n) 长度为n的字符串 • INT(n) n位数字的整数
实体集和属性选择如下。 • 实体集1 旅客 PASSENGERS
属性: 姓名 NAME:CHAR(30) 住址 ADDRESS:CHAR(30) 电话 PHONE:INT(10)
FLIGHTS) 表 示 一 次 飞 行 航 班 , 从 DEPARTURES到FLIGHTS是多对一联系。
民航航班管理数据模型
( 4 ) ASSIGNED-TO(PERSONNEL , DEPARTURES) 表示每个航次的空中乘务 员,它是多对多联系。 (5)CAN-FLY(PILOTS,PLANES) 表示 能驾驶飞机的飞行员,是多对多联系。 (6)TYPE(AIRCRAFT,PLANES) 从 AIRCRAFT到PLANES是多对一联系,表 示每架飞机的机型。
• 属性值的取值范围称为值域(Domain),例 如人的年龄值域为0~250,图书馆的馆藏资料 类型的值域为(书籍、杂志、会议录、内部资 料)。
基本概念
• ER模型中的联系是指实体类型之间的联系。例 如,教师教学生,“教”就是实体类型“教师” 和“学生”之间的联系。 •联系也可以有属性。例如,学生实体与课程实体 之间的联系“选课”,可以有属性学号、课程号、 成绩等。
【例】实体“学生”,具有属性“学号”、“姓 名”、“性别”、“年龄”。
基本概念
• 所谓属性是指事物的某一方面的特征,属性可 以是基本属性或导出属性。例如,学生的学号 是一个简单属性;学生的家庭地址是一个复合 属性,它由简单属性“城市”、“街道”、 “门牌号”等组成。
• 属性可以是基本属性或导出属性。例如,一个 人的生日是基本属性,年龄是导出属性,年龄 可以根据生日和当前日期导出。
第二章
E-R图和关系数据库设计
2.1 实体-联系模型
( E-R图)
2.1.1 基本概念
• 实体-联系模型(ER模型)为数据库建 模提供了3个基本的语义概念:实体 ( Entity ) 、 联 系 ( Relationship ) 、 属 性(Attributes)。 • 实体是指客观存在的、对于建立数据库 有意义的、能够被清晰地辨识的事物或概 念,实体用它的若干属性来描述的。
NAME和ADDRESS组成本实体集的关键字。
民航航班管理数据模型
•实体集2 航班FLIGHTS 属性: 航班号 NUMBER:INT(3) 出发地 SOURCE:CHAR(3) 目的地 DEST:CHAR(3) 开点 DEP-TIME:INT(4) 到点 ARR-TIME:INT(4)
• 为简化起见,假设是直达航班。本实体集 可用 NUMBER 作关键字, 也可用 SOURCE与DEP-TIME组成关键字。
• 其中的属性依次代表学号、课程号、课程 名、成绩、任课教师姓名、教师出生日期 和工资。
• 规定:每个学生选修每门课只有一个成绩; 每门课只有唯一的课程号,并且由一个教 师担任。
【示例】问题
• SCT(学号,课程号,课程名,成绩,任课教 师姓名,教师出生日期和工资)
• 通过分析不难发现SCT存在如下问题。 1.数据冗余度问题(如教师姓名) 2.修改问题(如修改教师工资) 3.插入问题(如未开课的教师信息) 4.删除问题 (如教师调离学校)
ER图的联系类型(1)
•ER图中的联系类型有:递归联系、二元联系 和多元联系。 • 递归联系,即一个实体集合与其本身的联系。 •二元联系是指两个实体集合之间的联系。
ER图的联系类型(2)
•多元联系是指三个以上实体集ER模型中,首先确定实体集合,然后确定 联系集合,最后给出实体和联系的属性。 •下面的一些启发性规则可以帮助确定实体:
【转换示例】
【例】一个简单的足球队数据模型。 实体集选择如下: (1)球员 PLAYERS 属性:姓名 NAME
籍贯 BPLACE 生日 BDATE NAME为关键字。 (2)位置 POSITIONS 属性:名称 POSNAME 人数 POSNUMBER POSNAME或POSNUMBER均可作关键字,一般用 POSNAME。
相关文档
最新文档