关系数据库

上一节总结了数据模型中的概念模型的三大分类,现在我们从其中的关系数据模型展开,描述关系数据库

    关系数据库是支持关系模型的数据库系统,按照数据模型的三个要素,关系模型由关系数据结构,关系操作集合和关系完整性约束3部分组成

 

  1.关系数据结构:关系

       域:一组具有相同数据类型的值的集合

       笛卡尔积

     笛卡尔积是在域上面的一种集合运算

    D1*D2*D3*.....*Dn={d1,d2,d3,d4,d5.....,dn};

    笛卡尔积用来产生一个二维表

  关系:关系是笛卡尔积的一个有限子集,R(D1....Dm),m被称为关系R的度或目,关系也是一个二维表

    关系是关系数据模型的采用的数据结构,主要概念有:

      候选码,主码,主属性(候选码中的属性),非主属性(不包含在任何候选码中的属性称为非主属性或非码属性)

      全码:关系模式的所有属性都是是这个关系的候选属性

 

 

  2.关系模式:了解概念即可,注意模式二字:关系模式是型,关系是值

    

 

  

 

关系操作:

 

    关系操作分为

          1.查询操作

          2.插入(insert)删除(delete)修改操作(update)

    

    查询操作可分为:

         选择  投影    并 差 笛卡尔积    除    交   连接

         其中基本操作:选择 投影  并  差  笛卡尔积 5种

          其他的操作可以通过这5中操作推导出

 

     关系操作的特点是集合操作:即操作对象和操作结果都是集合

      

    关系数据语言分类:

        关系代数:对关系的运算来表达查询要求

        关系演算:用谓词来表达查询要求

            分为:

               元组关系演算

               域关系演算

        SQL:具有关系代数和关系演算双重特点的语言

        关系代数,元祖关系演算,域关系演算这三种关系演算语言在表达能力上是完全等价

 

 

    关系代数:

 

        传统的集合运算:

          并 交 差 笛卡尔积

         专门的关系运算符:

          选择  投影   连接

 

         连接:等值连接(=的范围不局限于相同属性组   不去除重复的属性列)

         自然连接:(=的范围局限于相同属性组   去除重复的属性列,舍弃不存在属性组相等的元组)

         外连接:(保留那些不存在属性组相等的元组)

         左外连接:(只保留右边那些不存在属性组相等的元组)

         右外连接:(只保留右边那些不存在属性组相等的元组) 

         除操作:A(x,y) B(y,z) A中的那些y中全部包含了B中y的元组的x 值。见书本P59

 关系的完整性约束

      1.实体完整性:主属性不能取空值

      2.参照完整性:属性F是基本关系R的外键,F与他的被参照关系S中的主码K相对应

        则对于R中每个元组在F上的值,要么为NULL(空),要么就必须是k域中的值

      3.用户自定义完整性

      

 

 

         

posted @ 2016-04-24 15:43  LT.C#  阅读(453)  评论(0编辑  收藏  举报