欢迎投稿

今日深度:

一步一步设计你的数据库之看看基础ER模型(1)

一步一步设计你的数据库之看看基础ER模型(1)


引言:一步一步设计你的数据库二发表之后,笔者收到了一些邮件,还有朋友直接电话笔者询问为什么不包含数据库物理设计方面的内容。笔者在这里解释一下,数据库物理设计与数据库产品是密切相关的,本系列的专注点是较为通用的数据库设计理念与方法,这也是国内软件项目中容易被忽视的一块。今天我们将学习实体关系ER)模型构件及其语义,这是数据库逻辑设计的基础。内容可能有些枯燥,但却非常重要和有用。

由于内容比较多,我们将分两讲来学习实体关系模型构件。

今天我们先来学习基本实体关系模型。

 

实体关系ER)模型的目标是捕获现实世界的数据需求,并以简单、易理解的方式表现出来。ER模型可用于项目组内部交流或用于与用户讨论系统数据需求。

ER模型中的基本元素

基本的ER模型包含三类元素:实体、关系、属性

图1 实体、关系、属性的ER构图

实体Entities):实体是首要的数据对象,常用于表示一个人、地方、某样事物或某个事件。一个特定的实体被称为实体实例entity instance或entity occurrence)。实体用长方形框表示,实体的名称标识在框内。一般名称单词的首字母大写。

关系Relationships):关系表示一个或多个实体之间的联系。关系依赖于实体,一般没有物理概念上的存在。关系最常用来表示实体之间,一对一,一对多,多对多的对应。关系的构图是一个菱形,关系的名称一般为动词。关系的端点联系着角色role)。一般情况下角色名可以省略,因为实体名和关系名已经能清楚的反应角色的概念,但有些情况下我们需标出角色名来避免歧义。

属性Attributes):属性为实体提供详细的描述信息。一个特定实体的某个属性被称为属性值。Employee实体的属性可能有:emp-id, emp-name, emp-address, phone-no……。属性一般以椭圆形表示,并与描述的实体连接。属性可被分为两类:标识符identifiers),描述符descriptors)。Identifiers可以唯一标识实体的一个实例key),可以由多个属性组成。ER图中通过在属性名下加上下划线来标识。多值属性multivalued attributes)用两条线与实体连接,eg:hobbies属性一个人可能有多个hobby,如reading,movies…)。复合属性Complex attributes)本身还有其它属性。

辨别强实体与弱实体:强实体内部有唯一的标识符。弱实体weak entities)的标识符来自于一个或多个其它强实体。弱实体用双线长方形框表示,依赖于强实体而存在。


www.htsjk.Com true http://www.htsjk.com/shujukukf/17030.html NewsArticle 一步一步设计你的数据库之看看基础ER模型(1) 引言:一步一步设计你的数据库二发表之后,笔者收到了一些邮件,还有朋友直接电话笔者询问为什么不包含数据库物理设计方面的内容。...
评论暂时关闭