关系模型基本概念笔记

第三讲关系模型之基本概念

关系模型简述

  1. 关系模型是从表(table)以及表的处理方式中抽象出来的
  2. 形象的说,一个关系(relatioin)就是一个Table
  3. 关系模型组成:
  • 描述数据库的数据的基本结构
  • 描述表之间的各种操作(关系运算)
  • 操作应该遵循的约束条件(完整性约束)

什么是关系

相关概念

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

  • 域的基数:集合中元素个数

  • 元组:每一个域中任取一个值所形成的组合

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

  • 笛卡尔积:所有可能组合而成的元组的集合

因为笛卡尔积中的所有元组并不都有意义,所以

关系:

  • 是笛卡尔积的子集

  • 笛卡尔积具有某方面意义的那些元组被称为一个关系

  • 关系不同列可能来自同一个域,为区分,需为每列起名,该名即为属性名

  • 例:设有一个”人类“域:里面有男人,也有女人。男女可以分别组成男女列,此为不同列可以来自同一个域

  • 关系的度/目(degree):列的数量

  • 关系的基数:元组数量

关系模式与关系:

  • 关系模式就是关系的结构(也可以称为表的结构)

  • 关系是关系模式在某一刻的数据

  • 一个关系模式下可以有很多的关系(表)

例:

在这里插入图片描述

在这里插入图片描述

  • 关系是以内容来区分的,而不是属性或者元组在关系中的顺序。

  • 例:

在这里插入图片描述

在这里插入图片描述

上图是完全相同的关系

  • 关系第一范式:属性不可再分割

  • 候选码:

    • 关系中的一个属性/属性组,能唯一标识一个元组,这样的属性/属性组称为候选码
  • 主码/主键(primary key):

    • 当有多个候选码时,可以选择一个作为主码
    • DBMS以主码为主要线索管理关系中的各个元组
  • 主属性:包含在任意一个候选码中的属性被称为主属性

  • 非主属性:主属性之外的其他属性被称为非主属性

  • 外码/外键(foreign key):

    • 关系R中的一个属性组,它不是关系R的候选码,但它与另外一个关系S的候选码对应此属性组被称为关系R的外码或者外键
    • 两个关系通常靠外码连接起来

关系模型中的完整性

实体完整性

实体完整性对应的是主码

  • 关系中主码的属性值不能为空值
    • 空值:不知道或者无意义的值,有空值的时候需要特殊处理
    • 意义:关系中的元组是以主码来唯一标识的,若主码为空,就会出现不可标识的元组

参照完整性

参照完整性对应的是外码

  • 关系R1中的外码与关系R2的主码相对应或者R1中的外码为空值(空值可以看作尚未选择外码)
    • 意义:若关系R1的某元组t1参照关系R2的某个元组t2,则t2必须存在

用户自定义完整性

用户自己定义的约束条件

例如:

  1. 性别属性值的取值范围只能为 “男” 或 “女”
  2. 姓名必须在8个汉字字符之内
  3. 年龄必须在0-150之间

DBMS对关系完整性的支持

  1. 实体完整性和参照完整性由DBMS自动支持
  2. DBMS通常提供如下机制:
    1. 可以使用户自己定义有关的完整性约束条件
    2. 有操作发生时,DBMS自动判定操作是否符合用户自己定义的完整性规则
相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页