`
Josh_Persistence
  • 浏览: 1649949 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

数据库ER图快速入门

阅读更多

ER图分为实体、属性、关系三个核心部分。实体是长方形体现,而属性则是椭圆形,关系为菱形。

 

ER图的实体(entity)即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等,实体成员(entity member)/实体实例(entity instance) 不需要出现在ER图中。

 

ER图的属性(attribute)即数据对象所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性( unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性。

 

ER图的关系(relationship)用来表现数据对象与数据对象之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系,关系用菱形来表示。

 

 

ER图中关联关系有三种:

1对1(1:1) :1对1关系是指对于实体集A与实体集B,A中的每一个实体至多与B中一个实体有关系;反之,在实体集B中的每个实体至多与实体集A中一个实体有关系。


1对多(1:N) :1对多关系是指实体集A与实体集B中至少有N(N>0)个实体有关系;并且实体集B中每一个实体至多与实体集A中一个实体有关系。

多对多(M:N) :多对多关系是指实体集A中的每一个实体与实体集B中至少有M(M>0)个实体有关系,并且实体集B中的每一个实体与实体集A中的至少N(N>0)个实体有关系。

 

 

下面是个简单的例子:


ER实体补充讲解:

 

ER的实体还会细分为弱实体和复合实体:

 

弱实体:一个实体必须依赖于另一个实体存在,那么前者是弱实体,后者是强实体,弱实体必须依赖强实体存在,例如上图的学生实体和成绩单实体,成绩单依赖于学生实体而存在,因此学生是强实体,而成绩单是弱实体。

 

弱实体和强实体的联系必然只有1:N或者1:1,这是由于弱实体完全依赖于强实体,强实体不存在,那么弱实体就不存在,所以弱实体是完全参与联系的,因此弱实体与联系之间的联系也是用的双线菱形。

 

上面实例根据弱实体的情况更改如下图:

 

复合实体:复合实体也称联合实体或桥接实体,常常用于实现两个或多个实体间的M:N联系,它由每个关联实体的主玛组成,用长方体内加一个菱形来表示。

 

下图就是一个典型的复合实体,因为只是举例,相对粗糙,用户和商品两个实体是M:N的关系,中间又订单这个实体联系,因此订单这个实体是一个复合实体,同时如果用户 实体不存在,就没有订单实体的存在,因此对于用户实体来讲订单是弱实体,同理商品实体如果不存在,同样不存在订单实体,因此对商品实体而言订单是弱实体,具体如图:

 

 

ER属性补充讲解:

 

er图的属性还细分为复合属性、多值属性和派生属性、可选属性,同时还有用来表示联系的属性,称为联系属性。

 

复合属性(composite attribute):复合属性是指具有多个属性的组合,例如名字属性,它可以包含姓氏属性和名字属性,如下图:


复合属性也有唯一属性,例如学生的所在班级属性,由于多个年级都有班级,所以单单班级属性是不唯一的,但是和年级组成的复合属性后则可以匹配成唯一属性。

 

多值属性(multivalued attribute):一个实体的某个属性可以有多个不同的取值,例如一本书的分类属性,这本书有多个分类,例如科学、医学等,这个分类就是多值属性, 用双线椭圆表示。


派生属性(derivers attribute):是非永久性存于数据库的属性。派生属性的值可以从别的属性值或其他数据(如当前日期)派生出来,用虚线椭圆表示,如下图。

下面的小组人数就是典型的派生属性,随着学生实例的参加的兴趣小组变化,小组人数属性也会变化,一般来讲派生属性不存在于数据库中,而是通过相应的公式进行计算得到,如果要放到数据库中,那么隔一段时间就要进行更新,否则会出现数据错误。

 

 

可选属性(optional attribute):并不是所有的属性都必须有值,有些属性的可以没有值,这就是可选属性,在椭圆的文字后用(O)来表示,如下图的地址就是一个可选属性。

 

联系属性:联系属于用户表示多个实体之间联系所具有的属性,一般来讲M:N的两个实体的联系具有联系属性,在1:1和1:M的实体联系中联系属性并不必要。


 
分享到:
评论

相关推荐

    ER图从入门到精通

    E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。它是描述现实世界关系概念模型的有效方法。是表示概念关系模型的一种方式。

    数据库基础资料(偏向ER图设计)

    数据库入门的基础资料,偏向于ER图设计。适用于初学者

    ER图入门

    ### ER图入门详解 #### 一、ER图基础概述 ER图(Entity Relationship Diagram),即实体关系图,是一种用于描述系统的信息结构的图形工具。它主要用于数据库设计阶段,特别是概念设计阶段,帮助开发者理解系统中...

    MySQL数据库应用-从入门到精通

    此外,还要了解数据库设计的基本原则,如范式理论,以及如何通过ER图(实体关系图)进行数据库设计。 接下来,深入学习MySQL的数据类型,包括数值类型(如INT、FLOAT)、字符串类型(如VARCHAR、TEXT)、日期时间...

    MySQL数据库应用从入门到精通_第2版

    这部分将涵盖概念数据模型、逻辑数据模型和物理数据模型,以及ER图(实体关系图)的绘制。读者将学习如何创建数据库、数据表,并理解主键、外键、索引等关键概念,以及它们在数据库性能优化中的作用。 四、数据库...

    PowerDesigner数据库设计与使用 入门教程

    1. **概念数据模型(CDM)**:这是数据库设计的第一步,通常使用实体-关系图(ER图)表示。PowerDesigner中的CDM允许用户定义实体、属性和关系,帮助理解业务需求并创建初步的数据模型。 2. **逻辑数据模型(LDM)*...

    IBM DB2400数据库快速入门.docx

    这篇文档《IBM DB2/400数据库快速入门》旨在帮助初学者快速掌握如何在AS/400环境中操作和管理数据库。 一、AS/400对象的概念 AS/400系统中的对象(Object)是系统的基本单元,包括库(LIBRARY)、文件(FILE)、成员...

    数据库设计入门经典 中文完整版

    2. 数据模型:数据模型是数据库设计的基础,主要包括概念数据模型(如实体-关系模型ER)、逻辑数据模型(如关系模型)和物理数据模型。学会用E-R图来描述实体、属性和关系,以及如何将它们转换为表结构。 3. 关系...

    数据库快速入门

    ER图是概念设计的重要工具,而逻辑设计则涉及将ER图转换为表结构。 5. **数据库性能优化**:这包括索引的使用、查询优化、存储过程、视图和触发器的应用。了解如何通过合理的设计和配置提升数据库查询速度和整体...

    Mysql Oracle数据库设计入门经典

    逻辑设计则涉及将ER图转化为具体的SQL语句,创建表、视图和其他数据库对象。 对于MySQL部分,书里详细讲解了MySQL的特性和用法,包括数据类型选择、索引的创建与优化、事务处理和存储过程等。读者将学会如何利用...

    数据库原理与应用(入门到精通巩固版)

    1. 数据库设计:包括需求分析、ER图绘制、规范化理论等,是创建高效数据库的关键步骤。 2. 查询优化:如何编写高效的SQL查询,避免全表扫描,使用索引提升查询速度。 3. 数据备份与恢复:理解不同的备份类型(如...

    Access数据库课件(1)数据库系统知识入门.pdf

    数据库设计是构建数据库的关键步骤,包括需求分析、概念设计(如ER模型)、逻辑设计(转换为关系模型)和物理设计(考虑存储和性能)。在Access中,用户可以利用其内置工具进行这些设计步骤,实现简单到复杂的数据库...

    数据库课件适合新手入门下载很不错的

    4. **数据库设计**:理解数据库设计的重要性,包括需求分析、概念设计(ER图)、逻辑设计和物理设计。学习如何使用ER模型来表示实体间的关系,并转换为表结构。 5. **数据库安全性**:了解如何设置用户权限,控制对...

    mysql数据库应用从入门到精通第二版

    3. **数据库设计**:学习如何设计和创建数据库,理解范式理论,以及如何使用ER图进行概念建模,确保数据的完整性和一致性。 4. **表与索引**:了解不同类型的表(如InnoDB和MyISAM)及其特性,学习创建和管理索引以...

    精通数据库系列之入门教材很好的

    5. 数据库设计:包括概念设计(ER图)、逻辑设计(转换为关系模式)和物理设计(考虑存储效率和性能优化)。正常化是数据库设计中的一个重要步骤,它有助于消除数据冗余和提高数据一致性。 6. 数据库安全:涉及用户...

    数据库入门学习资料

    数据库入门学习是一个基础且重要的过程,涵盖了诸多概念和技术。以下是一些关于数据库学习的关键知识点: 1. **数据库类型**:数据库主要分为关系型数据库(如MySQL、Oracle、SQL Server)和非关系型数据库(如...

    ERstudio 入门教程

    在ER/Studio中,你可以创建和管理各种图表,包括实体关系图(ER图)、数据流图(DFD)等。这些图表直观地展示了数据结构和流程,便于团队协作和沟通。此外,ER/Studio支持逆向工程,能从现有数据库生成模型,方便...

    数据库全套基础知识(ppt)

    你将学习如何画ER图,理解实体、属性、联系的概念,以及如何通过ER图转换为关系模式。 “第3章 关系数据库标准语言SQL.ppt”是核心章节,SQL(Structured Query Language)是用于管理和操作数据库的语言。这一章会...

    oracle数据库21个入门教程

    19. **数据库设计**:理解数据库设计原则,包括ER图(实体关系图)和第三范式,有助于创建高效、稳定的数据库结构。 20. **数据库性能监控**:使用性能监视工具如V$视图分析数据库性能,识别瓶颈并进行调整。 21. ...

    MyEclipse_ER_Designer_Quickstart

    创建ER图部分说明了如何从数据库生成ER图。工作中的ER图部分则包括了诸多与ER图操作相关的子知识点:包括基本符号和表示、刷新表格和ER图数据、关系路由和重新路由、视觉网格、表格对齐和调整大小、定位和选择表格,...

Global site tag (gtag.js) - Google Analytics