ER模型的基本概念

  • 格式:doc
  • 大小:54.00 KB
  • 文档页数:10

下载文档原格式

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

数据库系统原理

模型的基本概念

ER模型由Peter Chen 于1976年在命题为“实体联系模型:将来的数据视图”论文中提出。模型的基本元素

1实体定义:

·实体:是一个数据对象,指应用中可以区别的客观存在的实物。

·实体集:是指同一类实体构成的集合。

·实体类型:是对实体集中实体的定义。

ER模型中提到的实体往往是指实体集。

实体用方框表示,方框内注明实体的命名。

2联系定义:

实体不是孤立的,实体之间是有联系的。

·联系:表示一个或者多个实体之间的关联关系。

·联系集:是指同一类联系构成的集合。

·联系类型:是对联系集中联系的定义。

联系是实体之间的一种行为。

联系用菱形框表示,并用线段将其与相关的实体连接起来。

3属性定义:

属性:实体的某一特性成为属性,能够唯一表示实体的属性或属性集称为“实体标识符”。一个实体只有一个标识符,没有候选标识符的概念。实体标识符有事也成为实体的主键。属性用椭圆形框表示,加下划线的属性为标识符。

属性域是属性的可能取值范围,也成为属性的值域。

属性的分类

1简单属性和符合属性:

(1)简单属性个是不可再分割的属性,符合属性是可在费解为其他属性的属性。

2单值属性和多值属性:

(1)单值属性指的是同一实体的属性只能取一个值,多值属性指同意实体的某些属性可

能取多个值

缺点:如果太过简单的表示多值属性,会产生大量的数据冗余,造成数据库潜在的数据异常、数据不一致性和完整性的缺陷。

调整方式:修改原来的ER模型,对多值属性进行变换。有以下两种方法:

1)将原来的多值属性用几个新的单值属性来表示。

2)将原来的多值属性用一个新的实体类型表示:这个新实体以来于原实体而存在,我们称之为弱实体。

3存储属性和派生属性:

(1)派生属性:两个或两个以上的属性值是相关的,可以从其他熟悉吸纳个只推导出值的属性,称为派生属性。

(2)储存属性:派生属性的值不必存储在数据库内,而其他需要存储值的属性称为储存属性。

4允许为空值的属性:当实体的某个属性上没有值时应使用空值(Null value),Null还可以用于值未知的时候,未知的值可能是缺失的,或者不知道的。

在数据库中,空值是很难处理的一种值。

联系的设计

1.联系的元数:

定义:一个联系涉及到的实体集个数,成为该联系的元数或度数。

·同一实体集内部的实体之间的联系,称为一元联系,也称为递归联系。

·两个不同的实体集、实体之间的联系,称为二元联系。

·三个不同实体集实体之间的联系,称为三元联系。以此类推

2联系类型约束:

(1)基数约束:

定义:实体集E1和E2之间有二元联系,则参与一个联系中的实体数目称为映射

基数。

二元联系有 1:1 1:N N:M

在具体实现时,有事我们对映射基数还要做出更精确的描述,即对参与联系的实

体数目指明相关的最小映射基数MIN和最大映射基数MAX,用“min..max”的方式

表示。

(2)参与约束:

定义:如果实体集E中的每个实体都参与联系集R的至少一个联系中,我们称实

体集E“完全参与”联系集R。如果实体集E中只有部分实体参与联系集R的联系

中,我们称实体集E“部分参与”联系集R。在ER图中表示时,完全参与用双线

边表示,部分参与用单线边表示。

模型的操作

定义:对ER图进行的种种变化称为ER模型的操作,包括实体类型、联系类型和属性的分裂、合并、增删等等。

1分裂方式分为水平分裂和垂直分裂两种

教师

(1)水平分裂为

男教师

女教师

(2)可以把实体相关的属性中常变的属性组成一个实体类型,把固定不变的属性组成另一个实体类型,这就是垂直分裂。

教师

垂直分裂为

2联系也可以分裂,合并是分裂操作的逆过程,合并的联系类型必须是定义在相同的实体类

型组合中。

采用ER模型的数据库概念设计步骤

定义:采用ER模型进行数据库的概念设计,可以分成三步进行:首先设计局部ER模型,然后把各局部ER模型纵横成一个全局ER模型,最后对全局ER模型进行优化,得到最终的ER 模型,即概念模型。

1设计局部ER模型

核心思想:“分而治之”,即分别考虑各个用户的信息需求,形成局部概念结构,然后再综合成全局结构。局部概念结构又叫局部ER模型,图形称为局部ER图。

每一个应用设计局部ER模型的步骤:

(1)确定局部结构范围

设计各个局部ER模型的第一步,确定局部结构的范围划分,划分的方式两种:

·依据系统的当前用户进行自然划分

·按用户要求数据库提供的服务归纳成几类,使每一类应用访问的数据显著的不同于其他类,为每类应用设计一个局部ER模型。

(2)定义实体

从信息需求和局部范围定义出发,确定每一个实体类型的属性和键。

实体、属性和联系之间并无截然区分的界限,划分依据有三种:

·采用人们习惯的划分

·避免冗余,在一个局部结构中,对一个对象之取一种抽象形式,不要重复

·依据用户的信息处理需求

实体类型确定之后,他的属性也随之确定。命名反映实体的语义性质,在一个局部结构中应唯一。

(3)定义联系

ER模型的“联系”刻画实体之间的关联。分析其中是1:1 1:M M:N等。

还要考虑实体内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。

应注意方式出现冗余的联系(可以从其他联系导出的联系),要尽可能的识别并消除