而今

导航

第二章 关系数据库

  2.1数据模型

2.1.1数据模型的概念及组成

  数据模型既要面对现实世界又要面对机器世界

  数据模型是数据特征的抽象,是某个数据库的框架,形式化地描述了数据库的数据的组织形式.
  数据模型的内容包括3部分1.数据结构2.数据操作3.完整性约束

2.1.2数据模型分类

  数据模型可分为概念层数据模型和组织层数据模型
  1.概念层数据模型(现实世界的角度)

  2.组织层数据模型(计算机世界的角度)包括1.层次模型(Hierarchical Model)2.网状模型(Network Model)3.关系模型(Relational Model)4.面向对象模型(Object Oriented Model)

    关系模型由一组关系组成,每个关系的数据结构是一张规范的二维表.该二维表由行和列组成.

      元组:二维表的每一行在关系中称为元组,一个元组对应表中一个记录

      属性:二维表的每一列在关系中称为属性

      度:一个关系所包含的属性的个数称为该关系的度

      域:属性的范围,同一个属性只能在相同的域中取值

      关键字(候选码,候选键):唯一标识一个元组的属性或属性组(不能重复)

      主属性:关键字的属性称为主属性.

      非主属性(非码属性):不包含在任何关键字中的属性称为非主属性

      主码(primary key):从多个候选码中选定一个作为主码

      外码(外关键字):设有两个关系R1和R2,若关系R2的一个属性或一组属性X不是所在关系的R2的候选码,而是另一个关系R1的候选码,则称该属性或属性组X为所在关系R2的外码或外部关键字.

      全码:关系模型的所有属性组组成该关系模式的候选码,称为全码。即所有属性当作一个码。若关系中只有一个候选码,且这个候选码中包含全部属性,则该候选码为全

      关系模式(Relation Schema):对关系的描述,表示为R(A1,A2,...,An)
        关系模式组成:R(U,D,DOM,F),其中

          R表示关系名

          U表示组成该关系的属性结合

          D表示属性集合U中属性所来自的域

          DOM表示属性向域的映像集合

          F表示属性间的数据依赖关系集合

    关系的性质

      1.不能有相同的属性名

      2.列是同质的,每一列中的分量是同一个类型的数据,来自同一个域

      3.列的顺序任意

      4.任意两个元组的候选码不能完全相同

      5.属性顺序任意

      6.关系中每个属性都不可分解(原子性)

2.2关系的完整性

  1.实体的完整性(entity integrity)

    主属性的值不能为空

  2.参照的完整性(referential integrity)

    参照的完整性也称引用完整性,它体现了关系之间主码和外码的约束条件

  3.用户定义的完整性(user defined integrity)

    用户定义的完整性也称域完整性,是针对某一具体关系数据库的约束条件,限制了某些属性中出现的值,把属性限制在一个有限的集合中.

2.3关系代数

传统的集合运算:

1.并(union)2.交(intersection)3.差(difference)4.笛卡尔积(cartesian product)


 

专门的关系运算:

1.选择2.投影3.连接4.除

 

 

 

 

 

 

 

    除:若关系R(X,Y)和S(Y,Z)进行运算,则产生一个属性集合X上的新关系.该关系的元组域S中的每个关系的元组组合都能在R中找到匹配的元组.这里X是属于R但不属于S,是属性的集合

   关系代数的五种基本操作:

    并(Union)差(Difference)笛卡尔积(Cartesian Product)投影(Projection)选择(Selection)

  关系代数的四种组合操作:

    交(Intersection)

    联接(Join)

    自然联接(Natural Join)

    除(Division)

 

2.4范式(normal form)
  1.第一范式(1NF)

    第一范式是对关系模型的最低要求,全部的属性仅为原子性

  2.第二范式(2NF)

    如果R(U,F)∈1NF,且每一个非主属性完全函数依赖于主码,则称R属于第二范式,简称2NF,记作R(U,F)∈2NF

    也就是通过一个属性可以找到其他所有的属性    

  3.第三范式(3NF)

    如果R(U,F)∈2NF,并且所有非主属性都不传递依赖于主码

  4.BC范式(BCNF)

    所有函数依赖的决定以子都是候选码

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2019-11-11 15:56  而今  阅读(468)  评论(0)    收藏  举报