《数据库原理及应用(MySQL版) 理论教案 第22次课(理论).docx》由会员分享,可在线阅读,更多相关《数据库原理及应用(MySQL版) 理论教案 第22次课(理论).docx(4页珍藏版)》请在第一文库网上搜索。
1、教案首页(以2课时为单元)课 序授课日期授课班次授课教师批准人22课题第9章关系模型规范化设计理论目的要求关系数据理论为数据库设计提供理论基础,表结构的拆分直接影响数据库的 设计,表结构的拆分要按照规范化理论来拆分。要求掌握下述内容:函数依赖;码; 范式(2NF; 3NF; BCNF)。教学内容1、关系模式的规范化重点难点重点:根据候选键对关系模式的规范化 难点:关系规范化。教学方法手 段教学方法:启发、引导、演示、归纳手 段:多媒体课件和黑板画的图例讲解教学步骤1 .提问引起思考引入课程2 .精讲课堂内容3 .课堂小结4 .布置作业复习 提问题求候选键的方法?作业题目课后习题四预习内容数据库
2、设计过程课时分配(以分钟计算)教学环节复习提问新课讲解课堂实践每课小结布置作业时间分配5781052教学内容课堂组织第9章关系模型规范化设计理论【课程导入】问题:求候选键的方法?【讲授内容】9.4关系模式的规范化9. 4.1范式及规范化1 .范式范式(NOnnal Form, NF)是指关系模式的规范形式。关系模式上的范式有6个:INF (称作第一范式,以下类同)、2NF、3NF、BCNF.4NF. 5NFo各范式间的联系为:5NFu4NFuBCNFu3NFu2NFu INF2 .规范化将一个给定的关系模式转化为某种范式的过程,称为关系模式的规范化过程。规范化一般采用分解的办法,将低级别范式向
3、高级别范式转化,使关系的语义 单纯化。规范化的目的是逐渐消除异常。9. 4.2完全函数依赖、部分函数依赖和传递函数依赖1 .完全函数依赖和部分函数依赖定义9.4设R是一个具有属性集合U的关系模式,X和Y是U的子集。如果X-Y,并且对于X的任何一个真子集Z, Z-Y都不成立,则称丫完全函数 依赖f于X,记作Xf Y;如果Xf Y,并且对于X的任何一个真子集Z, Z-Y都成立,则称Y部分函数依 赖P于X,记作X-Y。2 .传递函数依赖:义9.5设R是一个具有属性集合U的关系模式,X、Y、Z是U的子集,且X、 丫、Z是不同的属性集。如果X-Y, YfX不成立,Y-Z,则称Z传递函数依赖于X, 记作X
4、fY说明:(1)如果X-Y,且Y-X,则称X与丫等价,记作XTo(2)如果定义中Y-X成立,则X与Y等价,这时称Z对X直接函数依赖,而 不是传递函数。3 .4.3以函数依赖为基础的范式1 .第一范式(INF)定义9.6设R是一个关系模式。如果R中每个属性的值域,都是不可分的原 子值,则称R是第一范式,记作INF。INF是关系模式具备的最起码的条件。2 .第二范式(2NF)定义9.7如果关系模式R是1NF,而且R中所有非主属性都完全函数依赖于任 意一个候选键,则称R是第二范式,记作2NF。2NF的实质是不存在非主属性”部分函数依赖”于候选键的情况。非2NF关系或INF关系向2NF的转换原则是消除
5、其中的部分函数依赖,一般是 将一个关系模式分解成多个2NF的关系模式,即将部分函数依赖于候选键的非主属 性及其决定属性移出,另成一个关系,使其满足2NF。可以总结为如下方法:3 .第三范式(3NF)t定义9.8如果关系模式R是2NF,而且R中所有非主属性对任何候选键都不存 在传递函数依赖,则称R是第三范式,记作3NF。3NF是从INF消除非主属性对候选键的部分函数依赖,和从2NF消除传递函数 依赖而得到的关系模式。2NF关系向3NF转换的原则是消除传递函数依赖,将2NF关系分解成多个3NF 关系模式。可以总结为如下方法:设关系模式R属性集合为U,主键是肌R上还存在函数依赖X-Z,并且Z是非 主
6、属性,Z不包含于X, X不是候选键,这样W-Z就是一个传递依赖。此时应把R 分解成两个关系模式: Rl (XZ),主键是 X; R2 (Y),其中Y=U-Z,主键仍是W,外键是X。4. Boycc-Codd 范式(BCNF)定义9.9如果关系模式R是1NF,且对于R中每个函数依赖XY, X必为候选 键,则称R是BCw范式。由BCNF的定义可以知,每个BCNF范式应具有以下3个性质:(1)所有非主属性都完全函数依赖于每个候选键;(2)所有主属性都完全函数依赖于每个不包含它的候选键;(3)没有任何属性完全函数依赖于非键的任何一组属性。3NF关系向BCNF转换的原则是消除主属性对候选键的部分和传递函
7、数依赖,将 3NF关系分解成多个BCNF关系模式。9.4.4关系的分解1 .无损连接分解如果关系模式R上的任一关系r都是它在各分解模式上投影的自然连接(自然 连接是一种特殊的等值连接,结果中去掉重狂的属性列),则该分解就是无损连接 分解,也称无损分解。否则就是有损连接分解,或称有损分解。2 .无损连接分解的测试算法9.2无损分解的测试方法。输入:关系模式R=(AI, A2,,A), F是R上成立的函数依赖集,p= Rl, R2,,Rk是R的一个分解。输出:确定P是否为R的无损分解。步骤:(1)构造一张k行n列的表格,每列对应一个属性Aj (ljn),每行对应 一个模式Ri (IWiWk)。如果
8、Aj在Ri中,那么表格的第i行第j列处填上符号沟, 否则填上b“ (aj,1仅是一种符号,无专门含义)。(2)把表格看成模式R的一个关系,反复检查F中每个函数依赖在表格中是否 成立,若不成立,则修改表格中的值。修改方法如下:对于F中的一个函数依赖X,在表格中寻找对应于X中属性的所有列上符号 a或b“全相同的那些行,按下列情况处理:如果表格中有两行(或多行)这样的行,则让这些行中对应于Y中属性的所 有列的符号相同:如果符号中有一个西,那么其它全都改成aj;如果没有为,那么 用其中一个Ej替换其它值(尽量把下标i, j改成较小的数)。如果没有找到两个这样的行,则不用修改。对F集中所有函数依赖重复执行步骤2,直到表格不能修改为止。(3)若修改的最后一张表格中有一行是全a,即a, a2, ,a,l那么称p相对于F是无损分解,否则称有损分解。【课程小结】规范化的概念比较难建立,也比较难懂,必须多举些实例由浅入深的讲解。要 求学生课后多看例题,多琢磨。思政案例