2.1.1 关系数据结构

2.1.1 关系数据结构
关系数据库简介
    IBM E.F.Codd 1970年提出关系数据模型
    之后,提出关系代数和关系演算的概念
本章内容介绍
1.关系模型
    关系数据结构
    关系完整性约束
2.关系代数
    传统集合操作
    关系特有操作
    综合例子
3.关系演算

单一的数据结构---关系
    显示世界的实体以及实体间的各种联系均用关系来表示
    在用户看来,关系模型中数据的逻辑结构是一张扁平的二维表
关系模型(数据模型,三要素:数据结构,数据操作,数据的完整性约束)-->关系模式(数据库模式)--->关系数据库(数据库)
关系模型是建立在集合代数的基础上
下面从集合论的角度给出关系数据结构的形式化定义

1.域(Domian)
    域是一组具有相同数据类型的值的集合。
2.笛卡尔积(Cartesian Product)
    1.笛卡尔积的概念
        给定一组域D1,D2...Dn,允许其中某些域是相同的。
        D1,D2...Dn的笛卡尔积为
            D1×D2×...×Dn={(d1,d2...dn)|di∈Di,i=1,2,..,n}
        即:所有域的所有取值的任意组合
    2.基数(Cardinal number)
        若Di为有限集,其基数为mi,则D1×D2×...×Dn的基数M为
            M=m1*m2*...*m(n)
    3.笛卡尔积的表示方法
        笛卡尔积可表示为一张二维表
        表中的每行对应一个元组,表中的每列对应一个域
3.关系(Relation)
    1.关系的概念
        D1×D2×...×Dn的子集叫作在域D1,D2...Dn上的关系,表示为
            R(D1,D2...Dn)
                R:关系名
                n:关系的目或度(Degree)
                n=1时,称该关系为单元关系或一元关系(Unary relation)
                n=2时,称该关系为二元关系(Binary relation)
    2.关系中的每个元素(d1,d2,...,d(n))叫作一个n元组(n-tuple)
        或简称元组,通常用t表示
    3.属性(Attribute)
        关系中不同列可以对应相同的域
        为了加以区分,必须对每列起一个名字,称为属性
        n目关系必有n个属性
    4.码
        1.候选码(Candidate key)
            若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码
            简单的情况:候选码只包含一个属性
        2.全码(All-key)
            最极端的情况:关系模式的所有属性作为一个属性组是这个关系模式的候选码
        3.主码
            若一个关系有多个候选码,则选定其中一个为主码(Primary key)
        4.主属性
            候选码的诸属性陈我给·称为主属性(Prime attribute)
            不包含在任何候选码中的属性称为非主属性(Non-Prime attribute)
            	或非码属性(Non-key attribute)
    5.关系分为3类
        1.基本关系(通常又称为基本表或基表):实际存储的表
        2.查询表:查询结果对应的表
        3.视图表:由基本表和其他视图表导出的表,是虚表,不对应实际存储的数据
    6.基本关系的性质(6条)
        1.列是同质的(Homogeneous)
        2.不同的列可出自同一域
        3.列的顺序无所谓,列的次序可以任意交换
        4.任意两个元组的候选码不能相同
        5.行的顺序无所谓,行的次序可以任意交换
        6.分量必须去原子值,即属性的值不能再分(最基本的一条)
    7.D1×D2×...×Dn的某个子集才有实际含义,D1×D2×...×Dn的全集没有任何含义
4.关系模式(Relation Schema)
    1.关系模式的概念
        1.关系模式是型,关系是值
        	(注意把此处的关系与数据结构关系加以区分,此处的关系可以看做是数据结构关系的实例)
        2.关系模式是对关系的描述,描述的内容如下
            1.元组集合的结构
                1.属性的构成
                2.属性来自的域
                3.属性与域之间的映射关系
            2.完整性约束
    2.如何定义一个关系模式
        关系模式可以形式化地表示为:R(U,D,DOM,F)
            R:关系名
            U:组成该关系的属性名集合
            D:U中属性所来自的域的集合
            DOM:属性向域的映象集合
            F:属性间数据的依赖关系集合
            关系模式通常可以简记为R(U),或者R(A1,A2,...,An)
                R:关系名
                A1,A2,...,An:属性名
                注:域名和属性向域的映象常常直接说明为属性的类型、长度
    3.关系模式与关系的关系
        关系模式
            对关系的描述
            静态的、稳定的
        关系
            关系模式在某一时刻的状态或内容
            动态的、随时间不断变化的
        关系模式和关系往往笼统称为关系,注意通过上下文加以区分
5.关系数据库
    在一个给定的应用领域中,所有关系的集合构成一个关系数据库
    关系数据库的型和值
        关系数据库的型:
            关系数据库模式,是对关系数据库的描述
            关系数据库模式可以看成是关系模式的集合
        关系数据库的值:
            关系数据库模式在某一时刻对应的关系的集合,通常称为关系数据库
            关系数据库可以看成是关系的集合


本节概念加以区分示意图

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值