关系数据结构及形式化定义

1.关系

        1.1域(Domain)

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

例:整数

例:实数

例:{“男”、“女” ******}

        1.2笛卡尔积(Cartesian Product)、

        笛卡尔积:给定一组域D1,D2,*****Dn,允许其中某些域是一样的,这一组域的笛卡尔积为D1×D2×…×Dn ={(d1,d2,…,dn)|di属于Di,i=1,2,…,n}

        笛卡尔积的表示方式:笛卡尔积可以表示为一张二维表,表中每一行表示一个元组,每一列表示一个域;

        元组:笛卡尔积中每一个元素叫做一个n元组或简称元组

        分量:元组中的每一个值都叫做一个分量

        基数:若Di为有限集,那么其基数为mi(Di中有多少个数)

例:

        域:D1{“A小区”,“B小区”}       D2{“张三”,“李四”,“王五”}     D3{“爱喝酒”,“不爱喝酒”}

        笛卡尔积:

D1D2D3
A小区张三爱喝酒
A小区张三不爱喝酒
B小区张三爱喝酒
B小区张三不爱喝酒
A小区李四爱喝酒
A小区李四不爱喝酒
B小区李四爱喝酒
B小区李四不爱喝酒
A小区王五爱喝酒
A小区王五不爱喝酒
B小区王五爱喝酒
B小区王五不爱喝酒

        元组:每一行都是一个元组,如:{“A小区”,“张三”,“爱喝酒”};

        分量:除D1,D2,D3外,表格内的每一格都是一个分量;

        基数:D1基数为2,D2基数为3,D3基数为2;笛卡尔积基数为2*3*2=12;

        1.3关系(Relation)

        关系:D1×D2×…×Dn的子集叫作在域D1,D2,…,Dn上的 关系,表示为R(D1,D2,…,Dn;即:笛卡尔积的子集;

                R:关系名             n:关系的目或度(Degree)

        单元关系:n=1时;

        二元关系:n=2时;

        属性:关系也是一个二维表,其中不同的列可以对应相同的域,因此每一列都需要起一个名字,就是属性,n元关系就要有n个属性名;

        

        码:

        候选码:若某一属性组的值能够唯一的表示一个元组,则称该属性组为候选码;

                候选码可以有多个属性,其中最简单的属性为只存在一个属性;

        全码:关系模式的所有属性组是这个关系模式的候选码,称为全码;

        主码:如果一个关系有多个候选码,那么选取其中一个作为主码;

        主属性:候选码的属性称为主属性,非候选码的属性称为非主属性或非码属性;

        

        由于上一个例子不具有实际意义,抽取其中具有实际意义的例子:

小区名字爱不爱喝酒
A小区张三爱喝酒
A小区李四不爱喝酒
B小区王五爱喝酒

        候选码:名字

        其中“小区”“爱不爱喝酒”都不能唯一标识一个元组,因此不能称为候选码;

        由于只有一个候选码,那么“名字”也是此关系的主码,“名字”也是主属性;

        

        三类关系:

        基本关系(基本表或基表):实际存在的表,是实际存储数据的逻辑表示

        查询表:查询结果对应的表

        视图表:由基本表或其他视图表导出的表,是虚表,不对应实际存储的数据

        视图表解释:如透过窗户看教室内的学生,随着视角的转动,看到的学生不一样;也就是说你看到的并不是存储在视图表中的数据,而是存储在基本表中的数据,你只是看到了数据,而不是存储在视图表中;

        基本关系的性质:

        ① 列是同质的(Homogeneous)

        ② 不同的列可出自同一个域

                        其中的每一列称为一个属性

                        不同的属性要给予不同的属性名

        ③ 列的顺序无所谓,列的次序可以任意交换

        ④ 任意两个元组的候选码不能相同

        ⑤ 行的顺序无所谓,行的次序可以任意交换

        ⑥ 分量必须取原子值 这是规范条件中最基本的一条,不能表中有表

扣费
津贴基本工资加班费迟到请假总计
20002000200-100-1503950

        这个就不是一个关系,违背了第六条,分量必须取原子值;应该删除扣费

        

津贴基本工资加班费迟到请假总计
20002000200-100-1503950

        这就是一个关系;

2.关系模式

        关系模式(Relation Schema)是型

        关系是值

        关系模式是对关系的描述

        元组集合的结构

                属性构成

                属性来自的域

                属性与域之间的映象关系 完整性约束条件

        完整性约束条件

关系模式可以形式化地表示为:

R(U,D,DOM,F)         

R                关系名         

U                组成该关系的属性名集合         

D                U中属性所来自的域         

DOM           属性向域的映象集合         

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

关系模式通常可以简记为      

R (U)    或    R (A1,A2,…,An)

R: 关系名

A1,A2,…,An  : 属性名

注:域名及属性向域的映象常常直接说明为         属性的类型、长度

关系与关系模式的区别:

        关系模式 :对关系的描述 静态的、稳定的

        关系 :关系模式在某一时刻的状态或内容 动态的、随时间不断变化的

        关系模式和关系往往笼统称为关系

        通过上下文加以区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值