【软考-中级-数据库相关知识】02、关系数据库

关系数据库

  • 概念
    • 在关系数据模型中,把记录类型称为关系模式
    • 闭包:键的闭包应当包含R的所有属性
    • 完整性约束
      • 实体完整性
      • 参照完整性
      • 用户自定义的完整性:可以用触发器实现
      • 注意:视图不能实现完整性约束
    • 主键
      • 全码:全部属性组为关系模式的候选键
      • 候选码:排除没有出度,从剩余的看能不能推出来全部,能则为候选码
    • 断言是为了保证数据的完整性
    • 触发器
      • SQL语句的集合
      • 不能传递参数
      • 通过事件来触发,可以实现比check更复杂的约束
      • 举例:
        • 级别增加一级,工资增加500元
  • 关系代数运算
    • 不自动去重复列,需要进行选择
    • 集合运算符
      • 笛卡尔积:
        • 相乘,共有m+n列
      • 自然连接
        • 去除重复列
    • 比较运算符
    • 逻辑运算符
    • 关系运算符(连接、除)
      • 差的选择等于选择的差
      • 除:只除有的
    • 表连接
      • 左外连接:有共同字段找悬浮数据
      • 带条件的自然连接与笛卡尔积后选择条件等价
      • 没有公共属性的自然连接会转换为笛卡尔积操作
      • 分类
        • 左外连接:舍弃右边没有的
        • 右外连接:舍弃右边没有的
        • 完全外连接:所有舍弃的都放入
      • 查询优化
        • 按条件选择后,自然连接,再按条件查询
  • 规范化
    • 关系定义
      • 关系不可以嵌套定义,其属性必须是原子的、不可再分的
      • 关系模式:表的列
      • 函数依赖:列之间的关系
    • 范式
      • 1NF:属性不可分,存在部分函数依赖(学号,课程号)
      • 2NF:消除部分函数依赖
      • 3NF:消除非主属性对码的传递函数依赖【主属性存在部分函数依赖】
      • BCNF:消除主属性的部分函数依赖
      • 4NF:多值属性构成的(如工号、手机号)
    • 最小函数依赖集
      • 不含传递依赖
      • 不含部分依赖
      • 每个函数依赖的右部都是单属性!
    • 函数依赖集等价
      • 蕴含的属性间的依赖信息等价
      • 即函数依赖的闭包相等
      • A+=B+
    • E-R图
      • 双线椭圆表示多值属性
    • 依赖关系
      • 部分函数依赖:Y不完全依赖于X
      • 传递函数依赖:(学号,学院,学院领导)
  • Armstrong公理
    • 传递率
    • 合并规则
    • 伪传递率:间接推导
    • 增广率
  • 模式分解
    • 类型
      • 无损连接分解:
      • 保持原有的分解:看元素是否全
    • 表示
      • (候选码)+
  • 查询优化
    • 原则:提早执行选择
    • 其他:投影和其他运算同时进行,避免重复扫描关系
    • 索引改进
      • 当查询是性能瓶颈时,在关系上建立索引
      • 当更新是性能瓶颈时,考虑删除某些索引(索引会引起更新操作的效率降低)
      • 有利于大多数数据查询的索引设置为聚簇索引
    • 性能优化
      • 减少多表查询
      • 减少物化视图
      • 使用带UNION的条件子句等价替换OR子句
posted @ 2022-04-14 10:37  哥们要飞  阅读(305)  评论(0编辑  收藏  举报