数据库系统概论——关系数据库

目录

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

1.1关系

1.2关系模式

1.3基本关系操作

2、关系代数

2.1传统的集合运算

2.2专门的关系运算

3、*关系演算(略)


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

1.1关系

单一的数据结构——关系

        现实世界的实体以及实体间的各种联系均用关系来表示。

逻辑结构——二维表

        从用户角度,关系模型中数据的逻辑结构是一张二维表;

        关系模型是建立在集合代数的基础上。

1.域(Domain)

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

2.笛卡尔积(Cartesian Product)

        笛卡尔乘积:两个集合X和Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员 。

         元组(Tuple)

        笛卡尔积中每一个元素均为元组。

        分量(Component)

        笛卡尔积元素中的每一个值称为分量。

        基数(Cardinal number)

        基数是指在数据库中某个属性值不同的元组个数。

        若Di(i=1,2,…,n)为有限集,其基数为m i (i=1,2,…,n),则D1×D2×…×Dn的基数M为:

3.关系(Relation)

        (1)关系

        在数据库中,关系是指两个或多个表之间的联系。这些联系可以通过共享相同的数据列或通过使用外键来建立。

        D1×D2×…×Dn的子集称做在域D1,D2,…,Dn上的关系,表示为R(D1,D2,…,Dn)。

        R表示关系名;

        n表示关系的目或度(Degree)

        (2)码

        候选码(Candidate key):若关系中的某一属性的值能唯一地标识一个元组,则称该属性组为候选码。

        全码(AlI-key) :最极端的情况,关系模式的所有属性组是这个关系模式的候选码,称为全码。

        主码(Primary key):若一个关系有多个候选码,则选定其中一个为主码(Primary key)。

        外码(Foreign Key):设F是基本关系R的一个或一组属性,但不是关系R的码。如果F与基本关系R的主码相对应,则称F是基本关系R的外码。

  1. 基本关系R称为参照关系(Referencing Relation)
  2. 基本关系S称为被参照关系(Referenced Relation)

        主属性(Prime attribute):候选码的属性称为主属性。

        非主属性(Non-Prime attribute):不包含在任何侯选码中的属性。

1.2关系模式

        关系模式(Relation Schema)是对关系的描述。关系模式是型,关系是值。

        1.定义关系模式

        关系模式可以形式化地表示为:R(U,D,DOM,F)

  •         R:关系名
  •         U:组成该关系的属性名集合
  •         D:属性组U中属性所来自的域
  •         DOM:属性向域的映象集合
  •         F:属性间的数据依赖关系集合

1.3基本关系操作

        查询:选择、投影、连接、除、并、交、差等。(选择、投影、并、差、笛卡尔积是5种基本操作。)

        数据更新:插入、删除、修改。

2、关系代数

        关系代数是一种抽象的查询语言,是对关系的运算来表达查询。

        关系代数按运算符的不同可分为传统的集合运算(集合运算是从关系的水平方向即行的角度进行专门的关系运算(不仅涉及行而且涉及列两类。


2.1传统的集合运算

        关系R和S具有相同的目n(即两个关系都有n个属性),相应的属性取自同一个域。

1.并(union)R∪S

        运算结果: n目关系,由属于R或属于S的元组组成。

2.差(except)R-S

        运算结果: n目关系,由属于R而不属于S的所有元组组成。

3.交(intersection)R∩S

        运算结果:n目关系,由既属于R又属于S的元组组成。

4.笛卡尔积(见上文)R×S

2.2专门的关系运算

1.选择(Selection)
        选择又称为限制(Restriction)。在关系R中选择满足给定条件F=X1 θ Y1)的诸元组,记作:

       σ F (R)

      其中,θ表示比较运算符。X1,Y1等是属性名,或为常量,或为简单函数。

2.投影(Projection)

        从R中选择出若干属性列组成新的关系。

         π A (R)

        其中:A:R中的属性列。投影操作主要是从列的角度进行运算,投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)。

3.连接(Join)

        R ⋈ S(RθS)

        又称为θ连接,表示从两个关系的笛卡尔积中选取属性间满足一定条件的元组。

  •         悬浮元组:两个关系R和S在自然连接时,关系R和S中被舍弃的元组称为悬浮元组。
  •         外连接:如果把悬浮元组舍弃的元组也保存在结果关系中,在其他属性上填空值(Null),这种连接就叫做外连接(OUTER JOIN)。
  •         左外连接:如果只保留左边关系R中的悬浮元组叫做左外连接(LEFT JOIN)。
  •         右外连接:如果只保留右边关系S中的悬浮元组叫做右外连接(RIGHT JOIN)。

4.除(Division)

        给定关系R(X,Y)和S(Y,Z),其中X,Y,Z为属性组。R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。

        R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:

        元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作

        R÷S={ tr[X] | tr∈RA ∧ πY(s) ⊆Yx}

        Yx:x在R中的象集,x=tr [X](例:求x1在表A中的象集,就是先选出所有x属性中x=x1的那些行,然后选择出不包含x1的那些列

        【注意】除操作是同时从行和列角度进行运算。


3、*关系演算(略)

end~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值