E-R数据模型是什么?
概念模型是从现实世界到计算机世界转换的一个中间层次,在数据库设计的过程中它是比较关键的一步。因此,概念模型必须能够真实地反映现实世界中被管理事物的特征及其复杂的联系,即应该具有丰富的语义表达能力和直接模拟现实世界的能力,且具有直观、自然、语义丰富、易于用户理解的特点。目前,被广泛应用的概念模型是E-R数据模型(Entity-Relationship Data Model),即实体-联系数据模型,它主要用于数据库的设计。尽管E-R数据模型目前受到来自对象模型的严峻挑战,但仍得到大量用户以及CASE工具的支持。
01、信息的三个领域
1) 现实世界
现实世界是存在于人们头脑之外的客观世界,在这里所说的现实世界是指人们的各种事务管理活动。研究分析现实世界事物的规律和特点,是建立概念模型的基础。
因为现实世界由各种各样的实体组成,所以,最关心的是实体、实体特性、实体集和实体标识符。
(1) 实体(Entity)。实体是客观存在并可相互区别的个体。实体可以是具体的对象,也可以是抽象的;可以是有生命的,也可以是无生命的。例如,一名学生、一名教师、学生选课、银行卡、火车票、一张桌子、一台计算机、一场文艺演出、一场体育比赛等。
(2) 实体特性(Entity Character)。任何一个实体都具有它自己的特征或性质,如描述学生的特征有学号、姓名、性别、年龄、身高和体重等;描述财务明细账的特征有日期、凭证号、摘要、对方科目、余额、借方和贷方等;描述银行卡的特征有银行卡号、卡持有者的姓名、卡的类型和开户行等。描述实体的主要特征的这一特性称为实体特性。
(3) 实体集(Entity Sets)。在数据库设计中,常常关心具有相同实体特性的实体的集合,这种具有相同实体特性的一类实体的集合称为实体集,如全校学生的集合组成学生实体集、仓库管理中的入库单集合组成入库单实体集。
(4) 实体标识符(Entity Identifier)。在实体集中唯一能确定实体集中某个实体的最小实体特性集称为实体标识符。例如,在学生实体集中学号能够唯一确定某一个学生,所以,学号特性就是实体标识符;在财务明细账中凭证号就是实体标识符;银行卡号唯一确定某张银行卡等。但是特别强调实体标识符不一定是由一个实体特性组成的,如果一个实体特性标识不出来实体集中某个实体,就必须增加其他实体特性进行标识。同样,如果多个实体特性能够唯一标识实体集中某个实体,可是去掉某个实体特性也能够唯一标识实体集中某个实体,这也不能称为实体标识符。
2) 信息世界
现实世界中的实体,通过人们的感觉器官反映到人们的头脑中,形成信息,组成信息世界。简单地说就是现实世界在人们头脑中的反映。在信息世界里用实体记录表示实体,用实体记录集表示实体集,属性表示实体集的特性,用标识属性表示一个实体标识符。
在这些概念中,属性是最常用的术语,所以有关属性做如下几点说明。
(1) 一个实体记录可以有若干属性,但是在研究某一实体记录时,只关心那些感兴趣的属性。例如,如果要描述有关学生学习成绩,身高、体重等属性尽管是描述学生的主要特征,但是和学生学习成绩无关,因此就没有必要关心。
(2) 不能再细分的属性称为原子属性,如性别、年龄、姓名等。可以再细分的属性称为可分属性,如属性简历可以进一步细分为工作简历、培训简历等,工作简历又可以分为起始时间、结束时间、工作单位、证明人等。原子属性与可分属性之间具有相对性,例如,出生日期,可以把它看作原子属性,即将出生日期当作一个整体去处理,但如果在数据操作过程中,对出生日期中的年份、月份更加关心,在数据库设计中也可以把它看作可分属性。所以,在数据库设计中到底如何合理考虑属性非常重要,因为许多事物的特征也是相对的,同时又需要从不同的角度来描述事物,因此在实际情况中,要根据具体问题来使用属性的概念。
(3) 属性有型与值之分,属性的具体表现称为属性值。如性别就是一个属性的型,而男、女就是性别属性的值。属性值是附属于属性的,有什么样的属性,就有什么样的值,即属性的型是相对稳定的,属性的值随属性型相对变化,在某种情况下是原子的,在另外一种情况下又是可分的。如性别在不考虑年龄的情况下,属性值是男、女,它们是原子的,如果考虑年龄,女性又分为幼女、女童、女青年、女中年、女老年等。
(4) 每个属性值都有一定的变化范围。属性取值的范围称为值域(Domain)。例如,性别属性的值域是男、女,成绩属性的值域是0~100。
属性的概念在数据库设计中非常重要,到底把某个属性看作原子属性还是可分属性、到底是列为属性型还是属性值,对数据库设计会有很大影响。
3) 计算机世界
在信息世界中有些信息可以直接用数字表示,有些信息可以用符号、文字等来表示。但在计算机世界中一切信息只能用二进制数据表示,即在计算机世界中的信息必须是数字化的。因此,计算机世界也称为数据世界。
在计算机世界中常使用下列术语。
(1) 记录(Record):信息世界中的实体记录在计算机世界中的表示,对应的是现实世界的实体。
(2) 字段(Field):信息世界中的属性在计算机中的表示,它是可以命名的最小信息单位,对应的是现实世界的实体特性。
(3) 文件(File):信息世界中的实体记录集在计算机世界中的表示,对应的是现实世界的实体集。
(4) 关键字(Key Word):关键字能够唯一标识文件中的某一个记录的最小字段集,对应的是现实世界的实体标识符。
三个世界中的术语经常混在一起说,但说得比较多的是实体(这里的实体实质上是实体集的简称,因为关心的不是某一个个体,而是一个整体)、属性、关键字。
表1列出了三个不同世界对同一个概念的不同术语。
■ 表1 三个世界所用术语及其对应关系
- 点赞
- 收藏
- 关注作者
评论(0)