2.1 关系模型

第二章 关系数据库
2.1 关系模型

  • 关系数据结构
  • 关系完整性约束
    2.2 关系代数
  • 传统集合操作
  • 关系特有操作
  • 综合例子
    2.3 关系演算

2.1 关系模型

2.1.1 关系数据结构

2.1.2 关系完整性约束

2.1.3 关系数据库

  • 域(Domain)
    ♥   域是一组具有相同数据类型的值的集合。
    属性的取值范围来自某个域。 例:学生年龄属性的域为(15岁~45岁)、性别的域为(’男‘,’女‘)、系名的域是一个学校所有系名的集合;

  • 笛卡尔积(Cartesian Product)
    ♥   笛卡尔积
        给定一组域D1,D2,_,Dn,允许其中某些域是相同的。
            D1,D2,……,Dn 的笛卡尔积为:D1X D2X……XDn={(d1,d2,……,dn)|di∈Di,i = 1,2,……,n}

  • 所有域的所有取值的任意组合

  • 笛卡尔积可以看成是关系的“域”
    ♥   基数(Cardinal number)

  • 若Di(i = 1,2,……,n)为有限集,其基数为mi(i = 1,2,……,n),则D1X D2X……XDn的基数M为:M = m1 X m2 X …… X mn
    ♥   笛卡尔积的表示方法

  • 笛卡尔积克表示为一张二维表

  • 表中的每行对应一个元组,表中的每列对应一个域
    例:给出三个域
    ♥   D1 = 导师集合supervisor = {张三, 李四}
    ♥   D2 = 专业集合speciality = {计算机专业, 信息专业}
    ♥   D3 = 研究生集合postgraduate = {小明, 小红, 小丽}
    ♥   D1,D2,D3的笛卡尔积为
    ♥   D1 X D2 X D3 = {(张三,计算机专业,小明),(张三,计算机专业, 小红),(张三,计算机专业, 小丽),(张三, 信息专业,小明),(张三,信息专业,小红),(张三,信息专业,小丽),(李四,计算机专业,小明),(李四,计算机专业,小红),(李四,计算机专业,小丽),(李四, 信息专业,小明),(李四,信息专业,小红),(李四,信息专业,小丽)}
    ♥   基数为2 * 2 * 3 = 12

supervisorspecialitypostgraduate
张三计算机专业小明
张三计算机专业小红
张三计算机专业小丽
张三信息专业小明
张三信息专业小红
张三信息专业小丽
李四计算机专业小明
李四计算机专业小红
李四计算机专业小丽
李四信息专业小明
李四信息专业小红
李四信息专业小丽
    1. 关系(Relation)
      (1) 关系
      D1X D2X……XDn的子集叫作在域D1, D2,……,Dn上的关系,表示为R(D1, D2,…,Dn)
  • R:关系名
  • n:关系的度(Degree)
    (2) 元组
    关系中每个元组(d1,d2,…,dn)叫作一个n元组(n-tuple)或简称元组,通常用t表示。
    (3) 属性
  • 关系中不同列可以对应相同的域
  • 为了加以区分,必须对每列起一个名字,称为属性(Attribute)
  • n目关系必有n个属性
    (4) 码
    • 候选码(Candidate key)
      若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码
      简单的情况:候选码只包含一个属性
    • 全码(All-key)
      最极端的情况:关系模型的所有属性组是这个关系模式的候选码,称为全码(All-key)
    • 主码
      若一个关系有多个候选码,则选定其中一个为主码(Primary key)
    • 主属性
      候选码的诸属性称为主属性(Prime attribute)
      不包含在任何候选码中的属性则称为非主属性(Non-Prime attribute)或非码属性(Non-key attribute)

(5) 单元关系与二元关系
当n = 1时,称该关系为单元关系(Unary relation)/一元关系
当n = 2时,称该关系为二元关系(Binary relation)

(6) 基本关系的性质
ⓐ 列是同质的(Homogeneous)
ⓑ 不同的列可出自同一个域
ⓒ 列的顺序无所谓,列的次数可以任意交换
ⓓ 任意两个元组的候选码不能相同
ⓔ 列的顺序无所谓,列的次数可以任意交换
分量必须去原子值(这是规范条件中最基本的一条——即表中不能有表)
D1, D2,…,Dn的笛卡尔积的某个子集才有实际含义

2.1.1 关系数据结构

2.1.2 关系完整性约束

2.1.3 关系数据库

  1. 什么是关系模式?
  2. 如何定义关系模式?
  3. 关系模式与关系的关系

1. 什么是关系模式?

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

  • 元组集合的结构
                ❣  属性构成
                ❣  属性来自的域
                ❣  属性与域之间的映像关系
  • 完整性约束条件

2. 定义关系模式

关系模式可以形式化地表示为:
            R(U,D,DOM,F)
            R: 关系名
            U:  组成改关系的属性名集合
            D: U中属性所来自的域
            DOM: 属性向域的映像集合
            F: 属性间数据的依赖关系集合
例:
      导师和研究生出自同一个域——人
      取不同的属性名,并在模式中定义属性向域的映像,即说明它们分别出自哪个域:
      DOM (supervisor - person)
      = DOM (postgraduate - person)
      = person
关系模式通常可以简记为R(U)或R(A1, A2, … ,An)

  • R:关系名
  • A1, A2, … ,An:属性名
  • 注:域名及属性向域的映像常常直接说明为属性的类型、长度

3. 关系模式与关系的“关系”

♥   关系模式

  • 对关系的描述
  • 静态的、稳定的

♥   关系

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

♥   关系模式和关系往往笼统称为关系——通过上下文加以区别

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

  • 元组集合的结构
                ❣  属性构成
                ❣  属性来自的域
                ❣  属性与域之间的映像关系
  • 完整性约束条件

2.1.1 关系数据结构

2.1.2 关系完整性约束

2.1.3 关系数据库

♥   关系数据库

  • 在一个给定的应用领域中,所有关系的结合构成一个关系数据库

♥   关系数据库的型与值

  • 关系数据库的型:关系数据库模式,是对关系数据库的描述
  • 关系数据库的值:关系模式在某一时刻对应的关系的集合,通常称为关系数据库

上一篇:1.5 绪论小结
目    录:《数据库系统概论》
下一篇:2.1 关系模型(关系完整性约束)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值