复试-数据库

141 阅读2分钟

事务

什么是事务

满足ACID的一组操作叫做事务

事务的四大特性

  1. 原子性(Atomicity):事务的操作一气呵成,要么全部提交,要么全部失败
  2. 一致性(Consistency):数据库在事务执行前后保持一致性状态。
  3. 隔离性(Isolation):一个事务在完成之前,其他事务不可见
  4. 持久性(Durability):一个事务提交后的修改会永远保存

数据库并发控制

数据库为什么需要并发控制

  1. 丢失修改:T1修改,T2修改,T2覆盖了T1的修改
  2. 读脏数据:T1修改,T2读,T1回滚,T2读,T2读取到修改失败的数据
  3. 不可重复读:T2读,T1改,T2读,两次读取数据不同

数据库并发控制的解决办法

封锁

封锁

数据库有几种锁

  1. 读锁(Shared),S锁。如果加了S锁,其他事务能继续加S锁。
  2. 写锁(Exclusive),X锁。如果加了X锁,其他事务不能继续加任何锁。

关系数据库设计理论

属性A对属性B完全函数依赖,就是通过属性B能确定属性A

数据库范式的定义及区别

数据库的四大范式

  1. 第一范式:属性不可再分(原子性)
  2. 第二范式:在第一范式的基础上,非主属性对主属性完全函数依赖。
  3. 第三范式:在第二范式的基础上,非主属性无传递函数依赖。
  4. BCNF:在第三范式的基础上,消除主属性对主键的部分依赖和传递依赖

码(key)和属性

候选码:唯一决定 主码:候选码选一个 主属性:所有候选码的属性

数据库的主键和外键

数据库中实体的关系

  1. 一对一
  2. 一对多
  3. 多对多

ER图三要素(Entity-Relationship)

实体,联系,属性

数据库三大模式

  1. 外模式(用户模式)
  2. 概念模式
  3. 内模式

数据库完整性

  1. 域完整性:保证列输入的有效性。比如是否允许空值。
  2. 实体完整性:保证表中的行唯一。
  3. 参照完整性:保证主键和外键的参照关系。保证表的一致性修改。

数据库的数据模型

  1. 层次模型:树
  2. 网状模型:图
  3. 关系模型:二维表

常用数据库

mysql,oracle

文件系统和数据库对数据库的管理有什么区别

  1. 管理对象不同,一个是文件,一个是数据
  2. 储存数据的方式不同,文件存放在外存中,数据由数据库统一存储。