数据库基础知识整理——关系数据库

关系模型:由三要素组成,即关系数据结构、关系操作集合和关系完整性约束

  • 关系:
    • 关系模型的数据结构较为单一,只包含单一数据结构——关系(一张扁平的二维表)
    • 关系模型是建立在集合代数的模型上,下面给出三个定义:
      • 1 域:一组具有相同数据类型的值的集合,通常用于描述属性的取值范围
      • 2 笛卡尔积 对一组域中的每一个元组都要与其他域中的所有元组进行连接,得到的集合称为笛卡尔积。
      • 3 关系:笛卡尔积的子集
  • 关系模式:对关系的描述称为关系模式
    • 关系是关系模式某一时刻的状态或内容,关系模式是静态的、稳定的,而关系是动态的、随时间不短变化的。
  • 关系数据库:
    • 关系数据库的值,就是若干关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。

关系操作

  • 基本关系操作:
    • 查询操作为一类
      • 查询操作分:一次一集合,∩、∪、-、笛卡尔积(×)
        • 这类操作的特点是集合操作的方式,不改变关系的结构,操作的对象和结果都是集合,可以成为一次一集合的方式
      • 一次一记录:选择,投影,连接、除
        • 这类操作的特点是非关系数据模型操作,操作的对象和属性多为元组或者属性。
    • 插入、删除、修改操作为一类
  • 关系数据语言分类:
    • 关系代数语言:例如ISBL
    • 关系演算语言:
      • 元组关系演算语言:例如APLHA、QUEL
      • 域关系语言:例如QBE
    • 具有关系代数和关系演算双重特点的语言:例如SQL(Structure Query Language,结构化查询语言)

关系完整性

  关系模型的完整性规则是对关系的某种约束条件,即关系的值随着时间的变化应该满足一些约束条件。
  

  • 关系的三类完整性约束
    • 实体完整性:
      • 若属性(指一个或者一组属性)A基本关系R的主属性,则A不能为空
        • 实体完整性规则是针对基本关系而言的,一个基本表通常对应现实世界的一个实体集。如,学生关系对应于学生的集合。
        • 现实世界中的实体具有唯一标志性。
        • 关系模型中,以主码作为唯一标识。
        • 主码不能为空
  • 参照完整性:
    • 设F为基本关系R的一个或一组属性,但不是关系R的主码,K是基本关系S的主码,如果F与K相对应,则称F为基本关系R的外键。
    • 对于R中每个元组在F上的值必须为:
      • 或者为空;
      • 或者为S中某个元组的主码值;
  • 用户定义完整性:
    • 用户定义的完整性就是针对某一具体关系数据库的约束条件。比如某一个属性必须取唯一值,非主属性不能为空等。

关系代数

除了基本的交、并、差、笛卡尔积之外,需要重点关注:选择、投影、连接、除运算
  

  • 选择是针对元组进行操作,从关系R中选出符合条件的诸元组。

  • 投影是针对属性进行操作,从关系中选择出若干属性组成新的关系

  • 连接是从两个关系的笛卡尔积中选出属性之间满足一定条件的元组

    • 通常分为:等值连接、自然连接(在等值连接的基础上,去掉重复行)
    • 在连接的过程中,如果把舍弃的元组保留下来,则成为外连接,其中保留左边关系R中舍弃元组的,称为左外连接(LEFTT OUTER JOIN),保留右边关系S中舍弃的元组的,称为右外连接(RIGHT OUTER JOIN)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值