`
阿尔萨斯
  • 浏览: 4194182 次
社区版块
存档分类
最新评论

ER图与范式

 
阅读更多

一、ER图

1、基本概念

1)实体或实例(instance)

实体指客观存在并相互区分的事物(也称为实体集实例或实例)。实体可以是一个具体的人或物,如张三、一辆汽车等,也可以是抽象的事件或概念,如学生的一次选课、一场演出等。

2)实体集

实体集表示一个现实的喝抽象事物的集合,这些事物必须具有相同的属性或特征。例如,学生实体集指全部学生的集合。这个集合中的一个元素就是这个实体集的一个实例。

3)属性

属性用于描述一个实体集的性质和特征。例如,学生Student实体集的属性有学号Sno、姓名Sname、性别Sex、出生年月Birth等,人们用一组属性来描述一个实体集的属性特征。

每个属性的取值范围称为域。例如,学号域为6位整数,姓名域为8位字符,性别域为2位字符。属性的具体取值叫属性值,例如,学号域的某个取值为“99001”、姓名域的某个取值为“王明”、性别域的一个取值为”男“、出生年月域的一个取值为”1982年3月5日“。学生属性的这些取值描述了现实世界中的一个学生王明同学个人的基本信息。

4)码

实体集中能唯一标识每一个实例的属性或属性组称为该实体集的码。

例如,在学生实体集中,学号就是码,它可以用来标识学生集合中的每一个对象,而姓名就不是码,因为学生可能有重名。

5)联系

联系描述现实世界中实物之间的关系。例如,一个学生选了一门课程,一个供应商供应多种零件等。

现实世界事物之间的联系可归纳为三类:

1)一对一联系(1:1)

若对于实体集A中的每一个实例,实体集B中至多有一个实例与之联系,反之亦然,则称实体集A和实体集B具有1:1联系。

例如,系和系主任两个实体集就存在1:1的联系,因为一个系只有一个系主任,而一个系主任只负责管理一个系。

2)一对多联系(1:n)

若对于实体集A中的每一个实例,实体集B中有n个实例(n>=0)与之联系,而对于实体集B中的每个实例,实体集A中至多有一个实例与之联系,则称实体集A与实体集B存在1:n的联系。

例如,系、学生两个实体集之间就存在着1:n的联系,因为一个系要招收若干名学生,而每一个学生只属于同一个系。

3)多对多联系(m:n)

若对于实体集A中的每一个实例,实体集B中有n个实例(n>=0)与之联系,而对于实体集B中的每个实例,实体集A中有m个实例(m>=0)与之联系,则称实体集A与实体集B存在m:n的联系。

例如,学生和课程两个实体集之间就存在着m:n的联系,因为一名学生可以选修多门课程,而每门课程可以被多个学生选修。

二、范式

对于同一个应用问题,可以构造出不同的ER模型,所以也可能设计出不同的关系模式。不同的关系模式性能差别很多,为了评价数据库模式的优劣,E.F.Codd在1971年至1972年系统地提出了第一范式(First Normal Form,1NF)、第二范式(Second Normal Form,2NF)和第三范式(Third Normal Form,3NF)的概念。1974年Codd和Boyce又共同提出BCNF范式,作为第三范式的改进。一个低级范式的关系模式,通过分解(投影)方法可转换成多个高一级范式的关系模式的集合,这种过程称为规范化。规范化设计方法也称关系模式的规范化。

1、第一范式

设有关系模式R(F,U),如果R的每一个属性值都是不可分的数据项(原子项),则此关系模式为第一范式。

2、第二范式

若关系模式R(F,U)是1NF,且每个非主属性完全函数依赖于码,则称R为第二范式。也就是说,在2NF中不存在非主属性对码的部分函数依赖。

3、第三范式

若关系模式R(F,U)是1NF,且不存在非主属性对主码的传递函数依赖,则称R为第三范式。

4、BCNF(改进的第三范式)

如果关系模式R是1NF,且每个属性(包括主属性)既不存在部分函数依赖也不存在传递函数依赖于候选码,则称R是改进的第三范式(Boyce—Codd Normal Form,BCNF)

5、第四范式

如果关系模式R属于1NF,对于R的每个非平凡的多值依赖X->Y(Y不属于X),X含有候选码,则称R是第四范式,即R属于4NF。

6、第五范式

设R是一个满足第五范式的关系模式,当且仅当R的每一个非平凡连接依赖都被R的候选码所蕴含。

分享到:
评论

相关推荐

    关于企业管理的数据库ER图和三范式

    请教大家 不知道这么做合理不合理 大家有什么说什么 小弟虚心接受 多谢

    毕业论文管理系统ER图

    毕业论文管理系统ER图 很专业的! E-R图 ER图 asp.net 专业的第三范式

    数据库设计ER图(第三范式规范).pdf

    数据库设计ER图(第三范式规范).pdf

    数据库设计ER图(第三范式规范).doc

    数据库设计ER图(第三范式规范).doc

    E--R图转换成关系模式规则与例题

    通俗易懂,绝对的好资料----l 若联系为1:1,则每个实体的码均是该关系的后选码。 l 若联系为1:n,则关系的码为n端实体的码。 l 若联系为m:n,则关系的码为诸实体码的组合。

    数据库设计及ER图.doc

    数据库设计及ER图 1.数据库设计流程 数据库作为数据的一个容器,不但对程序的performance有很大的影响,而且对应用程序 的扩展有非常大的影响.所以对应用程序来说,一个具有良好设计的数据库是非常重要的 .那么如何才能...

    数据库实验之学生管理系统

    数据库实验报告,在MySQL上写一个学生管理系统,ER图、范式、表俱全。不足请指正。

    数据库高分笔记整理,易错点难点概念解析,从数据库小白到大佬的武林秘籍

    第一部分是【基础概念】,介绍了很多易混淆的名词概念。比如说,超键:能唯一标识元祖的属性集 ,候选键:不含多余属性的超建,主属性:构成候选键的属性 ...第四部分是【ER 图】,介绍了ER图的概念和画法。

    2005-2009软件设计师历年真题

     • 数据模型,ER图,第一范式、第二范式、第三范式  • 数据操作(集合运算和关系运算)  • 数据库语言(SQL)  • 数据库的控制功能(并发控制、恢复、安全性、完整性)  • 数据仓库和分布式数据库基础知识...

    比较全面的MySQL优化参考.pdf

    mysql的最佳索引攻略 详解慢查询 ER图,数据建模与数据字典 数据中设计中的范式与反范式 字段类型与合理的选择字段类型 表的垂直拆分和水平拆分

    JavaSwingJavaGui图书馆管理系统

    资源内容: 示例: 内容概要:通过带着读者手写图书馆管理系统。 管理员功能: 管理员可以对自身信息进行管理,包括查询,修改,删除自身信息...能学到什么:1工厂模式、策略模式、观察者模式等 2库表设计范式、ER图

    小型水果店管理信息系统的系统分析报告

    小型水果店 库存 采购 销售 财务 的数据库设计步骤 包括需求分析 数据字典 ER图 逻辑结构设计 范式 等

    基于Java+Mysql实现的PC端图书管理系统软件【100010031】

    该项目主要实现了图书管理系统几个主要的基本功能,做这小项目是为了简单学习数据库设计、包括ER图,关系模式,范式,完整性约束,安全性,视图等等。 学习简单SQL语言、学习使用JDBC对Java和数据库的连接等等。 ...

    Oracle数据库系统原理++第2版

    主要包括关系模型基本理论,ER图及范式理论,SQL语言,Oracle存储空间的分配及释放时机,索引原理,事务处理及锁,备份恢复原理,存储过程及触发器,网络连接配置等内容。强调在学习各种技能的同时,理解关系型...

    数据库系统概念(原书第七版)课后作业题

    数据库系统概念(原书第七版)的课后习题答案,包含SQL语句,范式,ER图。

    数据库知识要点小结.docx

    总共涉及到数据库概论12个知识点 1.三级模式 2.主码,外码,候选码 3.基本表,视图,区别和联系 4.数据库的完整性,数据库的安全性的区别和联系 ...11.数据库设计应用,ER图绘制,关系模式转换 12.关系代数,SQL应用

    超市管理系统 课程设计

    2 综合ER图 三、逻辑结构设计 超市表(企业编号,店名,地址),主键为企业编号,符合三范式。 收银员表(收银员编号,姓名,性别,工资),主键为收银员编号号,符合三范式。 收银小票表(小票编号,商品编号,...

    高校数据库原理及应用期末真题:SQL与关系模型实战精解

    内容覆盖了数据库设计的基本原则、函数依赖、范式理论、ER图转换、事务处理、并发控制等多个核心领域,是数据库学习者和专业人士提升技能的宝贵资料。 适用人群包括高校计算机专业学生、数据库管理员、软件开发人员...

Global site tag (gtag.js) - Google Analytics