三级数据库技术辅导第二讲:2函数依赖概念

文章作者 100test 发表时间 2007:03:10 18:31:22
来源 100Test.Com百考试题网


2 函数依赖概念

数据依赖是通过一个关系中数据间值的相等与否体现出来的数据间的相互关系,是现实世界属性间相互关系的抽象,是数据内在的性质。

数据依赖中最重要的是函数依赖(Functional Dependency)。

2.1 函数依赖

定义:设有一关系模式R(A1,A2,…,An),X和Y均为(A1,A2,…,An)的子集,对于R的值r来说,当其中任意两个元组u,v中对应于X的那些属性分量的值均相等时,则有u,v中对应于Y的那些属性分量的值也相等,称X函数决定Y,或Y依赖于X,记为X->Y。

例:有关系,学生(学号S#,姓名SN,系名SD),子集X(学号S#),子集Y(系名SD)。

每个学生有唯一的一个学号,学生中可以有重名的姓名,每个学生只能属于一个系,每个系有唯一的系代号。有此,可以找出学生关系模式中存在下列函数依赖:

S#->SN;S#->SD

例:有关系,学校简况(学号S#,系名SD,系主任MN,课程CN,成绩G)。可写出函数依赖:

S#->SD;SD->MN;S#,CN->G

根据函数依赖的不同性质,函数依赖可分为完全函数依赖部分函数依赖传递函数依赖

2.2 完全函数依赖

定义:在R(U)中,如果X->Y,对于X的任意一个真子集X’,都有X’不能决定Y,则称Y对X完全函数依赖,记为XY 。

例:(S#,CN)G

2.3 部分函数依赖

定义:在R(U)中,如果X-> Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖,记为XY 。

例:(S#,CN)G,但(S#,CN)SD

2.4 传递函数依赖

定义:在R(U)中,当且仅当X-> Y,Y->Z时,称Z对X传递函数依赖。

例:描述学生(S#)、班级(SB)、辅导员(TN)的关系U(S#,SB,TN)。一个班有若干学生,一个学生只属于一个班,一个班只有一个辅导员,但一个辅导员负责几个班。根据现实世界可得到一组函数依赖:

F={S#->SB,SB->TN}

学生学号决定了所在班级,所在班级决定了辅导员,所以辅导员TN传递函数依赖于学生学号S#。

数据依赖还包括多值依赖连接依赖两种形式。

2.5 关键字(码)

定义:设K为R(U)中的属性或属性组合,若KU,则称K为R的(侯选)关键字,也称为码。若(候选)关键字多于一个,则选定其中的一个作为主关键字。



相关文章


三级数据库技术辅导第三讲:2第一范式:消去重复组
2000年9月机试试题
三级数据库技术辅导第二讲:2函数依赖概念
2001年9月机试试题
三级数据库技术辅导第三讲:1问题的提出
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛