【摘要】关系数据库设计中的范式理论是数据库课程教学中的重要内容。学生往往对采用数学公式描述的范式理论感觉比较抽象并且晦涩难懂。因此,为了帮助学生更好的理解和应用范式理论,教师应该以课本知识点为依托,精心设计范式理论的实例进行重点讲解,引导学生积极思考问题并参与实例的讨论,充分发挥学生学习的主动性,这样有利于对理论知识的掌握。
【关键词】关系数据库;范式理论;教学方法
一、引言
在数据库的设计中,最为重要的是构建合理的关系数据模型,而关系数据库的规范化理论是必须遵守的基本原则。因此,了解和学习范式理论相关知识显得尤其重要。而在学习过程中,由于教材上对范式理论的讲解往往只是描述了基本概念,强大的专业术语让学生无所适从,难以理解并且不会应用,从而逐渐失去对数据库学习的兴趣。因此,本文围绕该问题并结合实例对关系数据库中范式理论的教学方法进行了探讨。
二、范式理论的相关概念
1、函数依赖
定义:设U为属性集,X、Y是U的子集。若R是U上的关系模式,且R上的任意一个可能关系,对于每一个X都有唯一确定的Y值与之对应,则称X决定函数Y或函数Y依赖于X,记为 。
为了让学生更好的掌握知识点,教师可以辅以案例进行讲解。例如描述某高校教师的关系,可以有工号、名字、姓名和职称等属性,如表1所示。
表1
根据依赖的定义,在上表中每个职员工号就能决定其余属性值,换而言之,当给定职员工号便唯一确定了姓名、性别、年龄和职位。例如假设教师工号为1078,则相对应的姓名是张燕,性别为女,年龄为46岁,职称为副教授。故函数依赖关系可以记为:教工号(姓名,性别,年龄,职称)。对表格的分析,学生更容易理解函数依赖的定义。
2、完全函数依赖、部分函数依赖和传递函数依赖
(1)定义1:X和Y为R中的集合, 且对于X的任意一个真子集X,都有X不能决定Y,则称Y对X的完全函数依赖。
(2)定义2:X和Y为R中的集合, 且对于X的真子集X,存在X决定Y,则称Y为X的部分函数依赖。
(3)定义3:X、Y、Z为R中的集合,如果存在 、 ,但Y不决定X,且Y不包含Z,存在 ,则称Z对X的传递函数依赖。
教师在教学过程中,同样可以通过实例来分析讲解函数。例如,某高校学生专业课的成绩,每个学生对应很多门专业课,而每门专业课的考试分数也不同。如表2所示。
表2
根据上述定义,从表2可以看出,学号和专业课决定考试分数,两者为完全函数依赖关系;学号可以决定部分函数依赖关系姓名,但姓名只依赖于学号和专业课中的一部分,故称姓名部分依赖于学号和专业课。而传递函数依赖关系:假设在学号,学院,院长构成的关系模式中,学号决定院系,学院决定院长,从而可以推出学号决定院长,故称为传递依赖。
函数依赖关系是学习范式的基础理论,只有把握和理解其概念和应用,才能在数据库设计中正确的使用函数依赖。这样,通过对实例的分析,能够让学生们更加清楚明了三种类型函数依赖的关系与区别。
三、范式理论的教学
范式理论是建立在函数依赖关系基础之上的,是数据库设计必须遵循的基本准则。
1、第一范式1NF
第一范式是指R中的每个关系分量都是不可分的数据项,该定义换言之,就是每个属性都不能再分割,都是最小单位。为了帮助正确理解该定义,教师辅以实例进行分析,例如,高校图书馆同学借阅记录,如表3所示。
表3
在表3中,学生张宇借阅了两本书籍,该数据单元还可以再分割,从而不满足1NF。同时也会给数据更新带来很多麻烦,例如,插入数据方面,如果添加一名同学的借阅记录,但该同学并没有借阅任何书籍,则就会造成该同学借阅记录为空值,如果同时添加多名同学,则会造成借阅记录一栏中有很多空值,这对数据的处理带来不便。
因此对此关系模式进行修正,可以分割为两个表,学号和姓名,学号和借阅记录各为一个关系模式,修正后的表格对于借阅同一本书的学生人数更为方便,这样通过实例的讲解,对第一范式的运用更加清楚明白。
2、第二范式2NF
第二范式是指,若关系R满足1NF,且每一个非主属性对码必须完全函数依赖。该定义是在1NF的基础上加上了一个限制条件,教师在教学中采用表2进行分析,姓名部分依赖于学号和专业课,不满足2NF的定义,必须进行修正。我们将之分为两个表格:(1)学号和姓名的关系模式,其中主属性是学号,非主属性是姓名且完全函数依赖于主属性;(2)学号,专业课和考试分数的关系模式,其中主属性是学号和专业课,非主属性为成绩且完全函数依赖于主属性,满足2NF的定义。(1)和(2)的关系模式满足2NF定义的条件。通过这样的讲解,学生不仅理解了2NF的概念,也学会了在实际应用中如何实际2NF。
3、第三范式3NF
第三范式是指,若R关系满足2NF,且每一个非主属性对码不存在传递函数依赖。例如在关系模式(学号,姓名,院系,院长)中,学号为主属性,非主属性为(姓名,院系,院长),该关系满足2NF。但学号决定院长是传递函数关系不满足3NF。因此,必须进行修正,同样的可将其分解为(学号,姓名,院系)和(院系,院长)为两个关系模式,修正后的关系模式遵循3NF。教师可以让学生比较修正前后是否还存在其他的问题,通过如此讲解,学生理解了数据库设计要遵循的3NF,也能够更加清楚在不满足3NF的情况下,如何进行修正。这样,学生不仅掌握了理论知识,又能在案例分析学会对范式理论的运用。
四、结论
综上所述,范式理论作为数据库设计必须遵守的基本规则,是数据库教学中的难点所在。在数据库设计的教学中,应该本着理论与实践相结合的教学思想,围绕书本知识点并辅以实例进行分析和讲解,让学生更容易接受并理解范式理论。在学习了范式理论后,教师应该指导学生设计并完成一定量的数据库设计,让学生对数据库设计流程有个整体认知,并能将所学知识运用到实践中去。
【参考文献】
[1] 余 艳, 邢远秀, 刘燕丽. 关系数据库范式理论的实例教学法探讨[J]. 高师理科学刊, 2016,36(2):66-69.
[2] 李志洁, 王存睿. 关系数据库中的范式定义问题研究[J]. 大连民族学院学报, 2012,14(5):492-494.
[3] 李雁翎, 李鹏谊. 知识的内化:计算思维的培养与数据库教学[J]. 中国大学教学, 2013(7):33-35.
[4] 王 珊, 萨师煊. 数据库系统概论[M]. 北京: 高等教育出版社, 2014.
[5] 胡巧儿. 高职院校《数据库原理与应用》教学设计探讨[J]. 职业教育研究, 2013(8):100-102.
【作者简介】
李萍华(1980—),女,汉族,九江人,本科学历,工学学士,毕业院校:昆明理工大学,九江职业大学助教,主要研究方向:计算机科学与技术。