三级模式-两层映射
三级模式:外模式(视图级),概念模式(表级),内模式(文件级)
两种映射:外模式-概念模式的映射,概念模式与内模式的映射
数据库设计过程
E-R模型
关系代数
| 关系代数 | 符号 | 特点 |
|---|---|---|
| 并 | S1 ∪ S2 | 去掉重复 |
| 交 | S1 ∩ S2 | 共同元素 |
| 差 | S1 - S2 | 在S1中去掉S2中有的部分 |
| S2 - S1 | 在S2中去掉S1中有的部分 | |
| 笛卡尔积 | S1 × S2 | 两表相乘,每一条数据对应另一表的所有元素 |
| 投影 | π1,2(S1) | 选出S1表中第一第二列 |
| 选择 | σSn0 = No003(s1) | 选出S1表中Sn0列中等于No003的元素 |
| 自然连接 | S1 ⋈ S2 | 同属性名取值相等 |
例子:
规范化理论
- 数据冗余:会导致修改异常,插入异常,删除异常
- 范式
第一范式(1NF):在关系模式R中,当且仅当所有域只包含原子值,即每个属性都是不可再分的数据项,则称关系模式R是第一范式
第二范式(2NF):当且仅当关系模式R是第一范式(1NF),且每一个非主属性完成依赖候选键(没有不完全依赖时(没有部分函数依赖))则称关系模式为第二范式
第三范式(3NF):当且仅当关系模式R是第二范式(2NF),且R中没有非主属性传递依赖于候选键时,则称关系模式R是第三范式
BC范式(BCNF):设R是一个关系模式,F是它的依赖集,R属于BCNF当且仅当其F中每个依赖的决定因素必定包含R的某个候选码
总结: - 模式分解
有损分解:不能还原,无损分解:可以还原
无损联接分解,指将一个关系模式分解成若干个关系模式后,通过自然联接和投影等运算仍能还原到原来的关系模式
模式分解:表格法
模式分解:公式法
定理:如果R的分解为p= {R1,R2}.F为R所满足的函数依赖集合,分解p具有无损联接性的充分必要要求是: R1∩R2 -> (R1-R2) 或者 R1∩R2 -> (R2-R1).
例子:设R= ABC,F={A->B},则分解p1={R1(AB),R2(AC)}与分解p2={R1(AB),R3(BC)}是否都为无损分解
1. R1∩R2 = A R1-R2 = B R2-R1 = C 推导出A->B或者A->C 为无损分解
2. R1∩R3 = B R1-R3 = A R3-R1 = C 推导出B->A或者B->C 为有损分解
SQL语言
并发控制
数据库完整约束
实体完整性约束 主键(不能为空,唯一)
参照完整性约束 外键
用户自定义完整性约束一般对年龄的限制 0~100