数据库基础知识

数据联系的描述:

   联系是指实体与时之间的关系。与一个联系有关的实体集个数,称为联系的元数。例如:联系有一元联系、二元联系和三元联系等。

二元联系中的三种联系:

   一对一联系(简记为1:1)

   一对多联系(简记为1:n)

   多对多联系(简记为m:n)

 

数据模型

数据模型是指客观事物及其联系的数据描述,或者说数据模型表了数据库中的组织形式及数据所代表的意义。

20世纪70年代,美国国家标准化协会(ANSI)根据数据抽象的级别定义了四种模型,即概念数据模型、逻辑数据模型、外部数据模型、内部数据模型。

概念模型的设计:

l         现在普遍采用实体联系模型(Entity Relationship, ER)来表示概念模型。E-R模型以图形来表示实体及其联系,因而也可称ER模型为E-R图。

E-R图中有三个基本成分:

l         实体。用矩形框表示。

l         联系。用菱形框表示。

l         属性。用椭圆图形框表示。

逻辑模型的设计:

       当今主流关系数据模型

 

关系模型的基本概念:

关系模型的两个显著特点,

一是:数据结构简单表现为“二维表”,易懂易用

二是:有坚实的理论基础,建立在关系代数基础之上。

关系模型的概念:用二维表格表示实体集,用外键表示实体之间的联系的表格,就称为关系模型。

在关系模型中,不论是实体集还是实体之间的联系,统一表现为二维表,这是关系数据模型的最大特点。

1.         关系中的行称为元组

2.         关系中的列称为属性

3.         属性取值范围称为域

4.         关系模式常采用以下简洁形式表示: 关系名(属性名1……

5.         关系中的属性个数称为“元数”

6.         元组的个数称为“基数”

 

与键有关的概念:

l         候选键:在关系中凡能惟一标识元组的属性(或属性集),称为关系模式的候选键。

l         主键:用户从候选键中选做标识元组的属性(或属性集)称为主键。

l         外键:如果关系模式R中属性K是其它关系的主键,那么KR中称为外键。

约定:

1.        在关系模式主键属性下面画一条线表示它是主键

2.        在关系模式外键属性下面画一条线表示它是外键

 

关系模型中的,规范化二维表:

1.         关系中的每一个属性值都是不可分解的,即表中不能再套表。

2.         同一关系中不允许出现相同的属性名

3.         关系中没有重复的元组

4.         由于关系是一个集合,因此不考虑元组间的顺序

5.         关系中的属性在理论上也是无序的

 

关系模型的三类完整性规则:

——完整性是指数据的正确性和一致性。

1.         实体完整性规则(主键不为空)

2.         参照完整性规则

3.         用户定义完整性规则

 

E-R模型的设计:

采用E-R模型进行数据库概念设计可以分成三步进行:首设计局部E-R模型、然后把各局部E-R模型综合成一个全局E-R模型,最后对全局E-R模型进行优化,得到最终的E-R模型,即概念模型。

 

设计局部E-R模型、设计全局E-R模型(注意一个实体类型在全局E-R图中只能出现一次、并尽力合并相关实体)、全局E-R模型的优化

 

E-R图导出关系模型的基本原则如下:

1E-R图中每个实体类型都应转换为一个关系模式,实体的属性为关系模式的属性,实体的标识符为关系模式的键。

2E-R图中的联系类型比较复杂,需据不同情况做以下不同处理。

 

l         两个实体类型之间一对一的联系(将两个实体类型分别转换为两个关系模式,可以在其中任意一个关系模式的属性中加入键及联系类型的属性)

l         两个实体类型之间一对多的联系(将两个实体类型分别转换为两个关系模式,并在n端加入1端实体类型的键来实现一对多联系)

l         两个实体类型之间多对多的联系(必须将“联系”也转换为模式,有来联系双方的实体。其属性为两端实体类型的键加上联系的属性,而将该关系模式的键为两端实体键的组合)

l         两个以上实体之间的多对多联系,依据上面的原则逐步转化。

 

关系代数:

关系数据操纵语言建立在关系代数基础之上,关系代数是以关系为运算对象的一组运算集合。由于关系定义为属性个数相同的元组的集合,因此集合代数可以引入到关系代数中来。

 

这里只讲专用的关系代数:

1、投影

投影操作是对一个关系进行垂直分割,消去某些列,并重新安排列的顺序。

2、选择

 根据某些条件作水平分割,选取符合条件的元组。

3、连接

 笛卡尔积:(RXS)确定最后的元组个数RxS,及R+S个元数

 ⊙连接和F连接:从RXS的元组中取出满足操作的元组

4、自然连接

 要求被连接的两个关系有若干相同的属性名(先作RXS操作再作,选择和投影操作)

 

关系规范化:

关系模式的冗余和异常问题:

数据冗余是指同一数据在系统中多次重复出现。

由于数据冗余引起的操作异常:修改异常、插入异常、删除异常

“分解”是解决问题的主要方法,也是规范化的第一条原则。

注:连接的代价是很大的。

 

函数依赖概念:

关系规范化实际上是围绕函数依赖进行的。

1.         什么是函数依赖:

函数依赖是指关系中,属性之间取值依赖的问题

2.         关系中可能存在不同函数依赖(相对于非主键与主键来说)

完全函数依赖

部分函数依赖

传递函数依赖

 

一个关系中各非主属性相对于主键存在不同函数依赖,将会导致关系性能变坏。

 

范示与规范化(各范示向下包容)

关系模式的好坏用什么标准衡量?这个标准就是模式的范示(Normal Forms,简记NF1NF是关系模式的基础、2NF已成为历史,一般不再提及、3NF是数据库设计中最常用的。

第一范示(1NF):

关系模式R的每个关系r的属性都是不可再分的原子值,那么称R是第一范示的模式。

(是关系模式应具备的最起码的条件)

第二范示(2NF

如果关系模式中存在传递函数依赖就不是一个好模式,需要把关系模式分解,以排除局部依赖,使之达到2NF

第三范示(3NF

对于满足2NF的关系,如果不存在“非主属性”对主键的传递函数依赖,则称属于3NF关系。

 

分解关系的基本原则:

l         无损分解、数据不丢失

l         分解后关系相互独立

l         遵循“一事一地”原则

 

 

 

posted on 2009-11-03 16:26  ONLY LOVE PROGRAME  阅读(1257)  评论(0编辑  收藏  举报

导航