数据库知识点

概念

Posted by Gavin on September 3, 2019

谁共我

醉明月

概念

概述

  1. 数据库发展
    • 人工管理阶段
    • 文件系统阶段
    • 数据库系统阶段
  2. 数据库模型
    • 层次模型
      • 有且仅有一个结点没有父结点,他就是根结点
      • 其他结点有且仅有一个父结点
    • 网状模型
      • 允许结点有多于一个的父结点
      • 可以有一个以上结点没有父结点
    • 关系模型
    • 面向对象模型
  3. 数据库体系结构
    • 外模式(用户可见的数据的逻辑模式和特征)
    • 模式(数据库中数据的逻辑模式和特征)
    • 内模式(数据物理结构和存储方式的描述)
  4. 两级模式映像
    • 外模式-模式(逻辑数据独立性)
    • 模式-内模式(物理数据独立性)
  5. 数据库系统(DBS)组成
    • 硬件系统
    • 数据库
    • 数据库管理系统(DBMS)
    • 相关软件和人员(DBA)
  6. 数据库系统特征
    • 实现数据共享
    • 减少数据冗余
    • 保持数据一致性
    • 数据的独立性
    • 安全保密性
    • 并发控制
    • 故障恢复
  7. 数据库管理系统(DBMS)的主要功能
    • 数据库定义功能
      提供数据描述语言(DDL),定义数据哭三级结构两级映像,定义数据完整性、安全性控制等
    • 数据库操纵功能
      提供数据操纵语言(DML),实现增、删、查、改
    • 数据库保护功能
      提供数据库恢复、并发控制、数据安全性和完整性控制
    • 数据库存储管理
      将DML转换成低层文件系统命令
    • 数据库维护功能
    • 数据字典
      实际数据库各级模式的定义,对数据库结构欧的描述
  8. 数据模型
    • 数据结构
    • 数据操作
    • 完整性约束
  9. 数据字典功能
    • 描述数据库系统的所有对象,并确定其属性
    • 描述数据库系统对象之间的各种交叉联系
    • 登记所有对象的完整性及安全性限制等
    • 对数据字典本身的维护、保护、查询和输出

关系数据库

  1. 关系模型中基本术语
    • 关系(二维表)
    • 元组(一行)
    • 属性(列)
    • 域(属性取值范围)
    • 关系模式
    • 候选码(属性或属性的组合,能唯一标识一个元组)
    • 主码
    • 主属性(候选码中的属性)
  2. 关系模型中的完整性约束
    • 实体完整性(主码不为空)
    • 参照完整性
    • 用户定义的完整性
  3. 关系代数的基本运算
    • 笛卡尔积
    • 选择
    • 投影
  4. 关系运算
    • 选择
    • 投影
    • 连接
  5. 关系系统的分类
    • 表式系统(仅支持关系数据结构,不支持操作)
    • 最小关系系统(仅支持关系数据结构和3种关系操作)
    • 关系完备系统(支持关系数据结构和全部操作)
    • 全关系系统(支持关系模型所有特性)
  6. 关系模式的范式
    • 第一范式
      每个属性的值域只包含原子项,不能排除数据冗余更新异常等问题,其中可能包含部分函数依赖
    • 第二范式
      属于第一范式,同时每个非主属性都完全依赖于候选码 + 第三范式
      属于第二范式,同时每个非主属性非传递依赖于候选码,可能存在主属性对码的部份依赖传递依赖
    • BC范式
      所有非主属性对每一个码都是完全函数依赖;所有的主属性对每一个不包含它的码,也是完全函数依赖;没有任何属性完全函数依赖于非码的任何一组属性;消除了插入删除异常
    • 第四范式

    PS:若关系模式中的属性全部是主属性,则其最高范式是3NF

SQL语言

  1. SQL语言特点
    • 类似自然语言,简单易学
    • 一种非过程语言
    • 一种面相集合的语言
    • 即可独立使用,又可嵌入使用
    • 具有查询、操纵、定义和控制的一体化功能
  2. SQL Server体系结构
    • 视图
    • 基本表
    • 存储文件
  3. SQL种类
    • DDL
    • DML
    • DQL
    • DCL
  4. 索引的作用
    • 提高查询速度
    • 提高连接、ORDER BY、GROUP BY的速度
    • 查询优化过程依赖索引
    • 强制实行的唯一性
  5. 索引的类型
    • 聚集索引
    • 非聚集索引
    • 唯一性索引
  6. 视图的作用
    • 简化用户操作
    • 使用户以多角度看待同一数据
    • 对于数据库的重构提供了一定程度的逻辑独立性
    • 对机密数据提供安全保护

数据库设计与保护

  1. 数据库设计基本步骤
    • 需求分析(数据流图、E-R图)
    • 概念结构设计(E-R图)
      设计概念模型
    • 逻辑结构设计
      概念模型——>数据结构模型
    • 物理结构设计
    • 数据库实现
    • 数据库运行和维护
  2. 事务
    DBMS的执行单位,由有限的数据操作序列组成,要么全做,要么全不做
  3. 事务的特性
    • 原子性(做则全做)
    • 一致性(事务独立执行的结果要保证数据库的一致)
    • 隔离性(并发事务不必关心其他事务)
    • 持续性(事务完成则其更改永久反映在数据库上)
  4. 数据库故障
    • 事务故障
    • 系统故障
    • 介质故障
  5. 数据库并发控制问题
    • 丢失更新
    • 不可重复读
    • 读脏数据
  6. 封锁
    • 排他型封锁(X封锁)
      不能再加其他锁
    • 共享型封锁(S封锁)
      可加S锁,不能加X锁
  7. 封锁协议
    • 一级封锁协议(事务T在修改数据R前必须先对其加X锁,直到事务结束才释放)[防止丢失修改]
    • 二级封锁协议(一级封锁协议的基础上,读取R之前,必须对其加S锁,读完释放)[防止丢失修改读脏数据]
    • 三级封锁协议(一级封锁协议的基础上,读取R之前,必须对其加S锁,事务结束后释放)[防止丢失修改不可重复读读脏数据]
  8. SQL完整性约束机制
    • 主码约束
    • 外码约束
    • 属性值约束
      • 非空值约束
      • 基于属性的检查子句
      • 域约束子句
    • 全局约束
      • 基于元组的检查子句
      • 断言