基本概念
一个关系模式应当是一个五元组
R(U,D,DOM,F)
- R:关系名
- U:一组属性
- D:属性组U中属性所来自的域D
- DOM:属性到域的映射DOM
- F:属性组U上的一组数据依赖F
数据依赖:
- 函数依赖(Functional Dependency,FD)
- 多值依赖(Multivalued Dependency,MVD)
规范化
函数依赖
设R(U)是属性集U上的关系模式。X、Y是U的子集。对于R(U)的任意一个可能的关系r,r中每一个X唯一确定一个Y,称X函数确定Y或Y函数依赖于X,记作X→Y。
R中一切关系均要满足约束条件。
- X→Y,但 Y⊊X (Y不真包含于X) ,称X→Y是非平凡的函数依赖
- X→Y,但 Y⊆X (Y真包含于X),称X→Y是平凡的函数依赖
- 若X→Y,则X称为这个函数依赖的决定属性组,也称为决定因素
- 若X→Y,Y→X,则记作X←→Y
- Y不函数依赖于X
- 如果X→Y,并且Y不函数依赖于X的任何一个真子集,则称Y对X完全函数依赖
- 如果X→Y,但Y不完全依赖于X,则称Y对X部分函数依赖
- 如果X→Y,( Y⊊X ),Y→Z, Z∉Y
- 当X不函数依赖于Y,则称Z对X*传递函数依赖*
- 当Y→X,则X←→Y,称Z对X*直接函数依赖*
码
设K为R< U,F> 中的属性或属性组合,若U对K完全函数依赖,则K为R的候选码,若候选码多余一个,则选定其中一个为主码。
包含在任何一个候选码中的属性成为主属性,如果整个属性是码,则成为全码。
关系模式R中,属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。
主码和外码提供了一个表示关系间联系的手段。
范式
不同的范式表示关系数据库满足不同程度的要求。
各种范式之间的联系: