关系数据语言的分类:
1.关系代数语言,
传统的集合运算
并 U
差 -
交 倒立U
笛卡儿积 X
专门的关系运算
选择(行) SELECT 关系名 WHERE 条件
投影(列) PROJECTION 关系名 (属性名1,属性名2)
连接 JOIN 关系名 1 AND 关系名 2 WHERE 条件 (等值连接和自然连接)
除 DIVISION
![除 例子](https://img-blog.csdnimg.cn/20181107223519632.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3czNTM1OTU=,size_16,color_FFFFFF,t_70)
2.SQL
3.关系盐酸语言
1>元组关系演算
2>域关系演算
关系的完整性约束: 正确性,相容性,一致性
实体完整性约束,参照完整性约束,用户定义完整性约束,域的完整性约束
关系数据库的规范化理论
函数依赖与关键字
-
函数依赖
-
决定因素:X->Y
完全函数依赖 X->Y;X'/->Y
部分函数依赖 X->Y;X'->Y
传递函数依赖 X->Y;Y/->X;Y->Z;则X->Z -
关键字
-
范式与关系规范化过程
一个低一级范式的关系模式通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程就叫规范化。
第一范式 1NF
属性不可再分
第二范式 2NF
满足1NF,非主属性完全函数依赖于候选关键字
第三范式 3NF
满足2NF,非主属性都不传递函数依赖于候选关键字(候选关键字直接决定非主属性)
BCNF
第三范式的改进