数据、数据模型与数据字典
- 数据:描述事物的符号化记录
- 数据模型:
- 数据结构
- 数据操作
- 数据完整性约束条件
- 数据字典
- 数据项
- 数据结构
- 数据流
- 数据存储
- 处理过程
数据管理三大阶段
- 人工管理
- 文件系统
- 数据库系统
数据库组成
- DBMS
- DBS
- DBA
- DB
两类数据模型
第一类
- 概念模型:E-R图
第二类
- 逻辑模型:
- 层次模型
- 网状模型
-
关系模型
- 数据结构
- 关系操作
- 完整性约束
-
物理模型
三级模式
- 外模式:用户模式(或子模式)
- 该用户的局部视图
- 模式:逻辑模式
-
所有用户的公共视图
-
内模式:存储模式
- 数据实际的存储方式
两级映像
- 外模式/模式映像:保证逻辑独立性
- 模式/内模式映像:保证物理独立性
数据库特点
- 数据结构化
- 数据共享高、数据冗余低
- 数据独立性高
- 包含物理、逻辑独立性,它们在二级映像中涉及到
SQL语言的特点
- 综合统一
- 非过程化
- 面向集合
- ...
数据语言
- 数据定义语言(DDL):create、drop、alter
- 数据查询语言(DQL):排序查询、聚合函数、模糊查询、分组查询、分页查询、内连接、外连接、子查询等
- 数据操纵语言(DML):insert、delete、update、select
- 数据控制语言(DCL):grant、revoke、commit、rollback
关系
- 域:一个属性。相同数据类型的集合
- 基数:一个属性的定义域。一个域的==所有取值可能的个数==
- 元组:一个对象。
- 分量:一个对象的某一个属性的值。
- 关系的目/度:这个关系有多少个属性(即列数)。
- 关系与关系模式的区别:
- 关系模式是预定义的,静态的
- 关系是当前的,动态的
安全性控制
- 存取控制(授权与收回)
- 视图机制(给不同用户定义不同的视图)
- 审计AUDIT
- 数据加密
存取控制
- 自主存取控制
- 用户权限的两个要素:数据库对象、操作类型
- 强制存取控制
- 给对象设置密级
- 给用户设置许可证
关系的四大异常
- 数据冗余:(在不同文件中)多次存储同一个数据
- 更新异常:如果修改会引发冲突
- 主键冲突、外键冲突、约束冲突、唯一索引冲突等
- 插入异常:如果要新增一个实体,还必须先新增另一个实体
- 删除异常:如果要删除一个实体,还必须先删除另一个实体
E-R图的三大冲突
- 属性冲突
- 同一个属性,在不同地方的定义域不同
- 同一个属性,在不同地方的取值单位不同
- 命名冲突
- 一名多义
- 一义多名
- 结构冲突
查询处理的四大阶段
- 查询分析
- 查询检查
- 查询优化
- 代数优化
- 物理优化
- 查询执行
事务的ACID特性
(便于记忆,单词简化了一点)
- A-Atom-原子性
- C-Consistent-一致性
- I-Isolate-隔离性
- D-Duration-持久性
并发操作造成的三个不一致性
- 丢失修改:同时修改一个数据,只有一个修改最终生效,其他的都丢失了
- 不可重复读(读后改):读数据(保存到A)后,又修改了这个数据,导致读取的数据与实际不一致。即下次再读数据(保存到B)后,B!=A
- 读脏数据(改后读,撤销改):修改并保存数据后,读取这个数据(保存到A),如果之前的修改操作被撤销,下次再读数据(保存到B)后,B!=A