数据库空集原因有哪些,VFP做完查询运行后只有字段名没有数据是什么原因
来源:整理 编辑:黑码技术 2024-07-13 02:25:06
1,VFP做完查询运行后只有字段名没有数据是什么原因
没有满足查询条件的记录嘛,当然就只有字段名没有数据,或者说查询结果为空集
2,函数依赖怎么理解
一、函数依赖概念 函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。函数依赖普遍存在于现实生活中,比如,描述一个学生的关系,可以有学号、姓名、所在系等多个属性,由于一个学号对应一个且仅一个学生,一个学生就读于一个确定的系,因而当“学号”属性的值确定之后,“姓名”及“所在系”的值也就唯一地确定了, 此时, 就可以称“姓名”和“所在系”函数依赖于“学号”,或者说“学号”函数决定“姓名”和“所在系”,记作:学号→姓名、学号→所在系。下面对函数依赖给出确切的定义。 定义:设U 系代码→系名,系代码→系地址,系代码→系电话,系代码→系专业设置。 系名→系代码,系名→系地址,系名→系电话,系名→系专业设置。 可见,系名与系代码相互依赖,记作系名←→系代码。 函数依赖中还可细分为多种函数依赖,分别介绍如下: 二、部分函数依赖 设R(U)是属性集U上的关系,x、y是U的子集,x是x的真子集,若x→y且x→y,则称y部分依赖x,记作X→PY。显然,当且仅当x为复合属性组时,才有可能出现部分函数依赖。 例如表1.6中, 显然有课程号→课程名,课程号→开课教研室代码。从另一角度看,只要课程号一定,同时课程名确定,开课教研室也就唯一确定,因此课程号+课程名→开课教研室代码。 但它与前述课程号→开课教研室代码是不同的,因为{课程号,课程名}存在真子集:“课程号”,课程号→开课教研室代码,我们把课程号十课程名→开课教研室代码称为“开课教研室代码”部分函数依赖于课程号+课程名。 三、完全函数依赖 设R(U)是属性集U上的关系,x、y是U的子集,x是x的真子集。若对于R(U)的任何一个可能的关系,有x→y但x→y,则称y完全函数依赖于x,记作X→FY。 所谓完全依赖是说明在依赖关系的决定项(即依赖关系的左项)中没有多余属性,有多余属性就是部分依赖。 例如设关系模式R,R=R(学号,姓名,班号,课程号,成绩),易知: “(学号,班号,课程号)→成绩”是R的一个部分依赖关系。 因此有决定项的真子集(学号,课程号),使得“(学号,课程号)→成绩”成立,且“学号→成绩”或“课程号→成绩”成立,“(学号,课程号)→ 成绩”是R的一个完全依赖关系。 四、传递函数依赖 设R(U)是属性集U上的关系,x、y、z是U的子集,在R(U)中,若x→y,但y→x,若y→z,则x→z,称z传递函数依赖于x,记作X→TZ。 例如在一个学校中,每门课均是某一位老师教,但有些老师可教多门课,则有关系“教学”如表3.1所示。 由以上关系不难分析,课程名→职工号、职工号→课程名,但职工号和其他属性的函数关系中都是决定因素,即职工号→老师名、职工号→职称,在这种情况下,老师名、职称传递函数依赖于课程名。 表3.1 教学表 课程名 职工号 老师名 性别 出生日期 职称 英语 T1 张平 男 55.6.3 教授 数学 T2 王文 女 62.10.5 副教授 C语言 T3 李迎 女 62.10.5 副教授 数据库 T2 王文 女 62.10.5 副教授多值依赖的定义: 设r(u)是一个属性集合u上的一个关系模式,x, y, 和z是u的子集,并且z=u-x-y,多值依赖x->->y成立当且仅当对r的任一个关系r,r在(x,z)上的每个值对应一组y的值,这组值仅仅决定于x值而与z值无关。 若x->->y,而z=空集,则称x->->y为平凡的多值依赖。否则,称x->->y为非平凡的多值依赖。可以看出,如果把上面的一组改为一个,那么多值依赖就变成了函数依赖。当然一个值组成的组也是组,所以说,函数依赖是多值依赖的特殊情况。如下表:
3,函数依赖怎么理解
多值依赖的定义: 设r(u)是一个属性集合u上的一个关系模式,x, y, 和z是u的子集,并且z=u-x-y,多值依赖x->->y成立当且仅当对r的任一个关系r,r在(x,z)上的每个值对应一组y的值,这组值仅仅决定于x值而与z值无关。 若x->->y,而z=空集,则称x->->y为平凡的多值依赖。否则,称x->->y为非平凡的多值依赖。可以看出,如果把上面的一组改为一个,那么多值依赖就变成了函数依赖。当然一个值组成的组也是组,所以说,函数依赖是多值依赖的特殊情况。如下表:函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。函数依赖普遍存在于现实生活中,比如,描述一个学生的关系,可以有学号、姓名、所在系等多个属性,由于一个学号对应一个且仅一个学生,一个学生就读于一个确定的系,因而当“学号”属性的值确定之后,“姓名”及“所在系”的值也就唯一地确定了, 此时, 就可以称“姓名”和“所在系”函数依赖于“学号”,或者说“学号”函数决定“姓名”和“所在系”,记作:学号→姓名、学号→所在系。下面对函数依赖给出确切的定义。 定义:设U若对于R(U)下的任何一个可能的关系, 均有x的一个值对应于y的唯一具体值,称y函数依赖于x,记作x→y。 其中x称为决定因素。进而若再有y→x,则称x与y相互依赖,记作x←→y。例如表1.2所示“系”关系中:如果系名值是唯一的,即各系名均不相同,那么有函数依赖集:一、函数依赖概念 函数依赖是从数学角度来定义的,在关系中用来刻画关系各属性之间相互制约而又相互依赖的情况。函数依赖普遍存在于现实生活中,比如,描述一个学生的关系,可以有学号、姓名、所在系等多个属性,由于一个学号对应一个且仅一个学生,一个学生就读于一个确定的系,因而当“学号”属性的值确定之后,“姓名”及“所在系”的值也就唯一地确定了, 此时, 就可以称“姓名”和“所在系”函数依赖于“学号”,或者说“学号”函数决定“姓名”和“所在系”,记作:学号→姓名、学号→所在系。下面对函数依赖给出确切的定义。 定义:设U 系代码→系名,系代码→系地址,系代码→系电话,系代码→系专业设置。 系名→系代码,系名→系地址,系名→系电话,系名→系专业设置。 可见,系名与系代码相互依赖,记作系名←→系代码。 函数依赖中还可细分为多种函数依赖,分别介绍如下: 二、部分函数依赖 设R(U)是属性集U上的关系,x、y是U的子集,x是x的真子集,若x→y且x→y,则称y部分依赖x,记作X→PY。显然,当且仅当x为复合属性组时,才有可能出现部分函数依赖。 例如表1.6中, 显然有课程号→课程名,课程号→开课教研室代码。从另一角度看,只要课程号一定,同时课程名确定,开课教研室也就唯一确定,因此课程号+课程名→开课教研室代码。 但它与前述课程号→开课教研室代码是不同的,因为{课程号,课程名}存在真子集:“课程号”,课程号→开课教研室代码,我们把课程号十课程名→开课教研室代码称为“开课教研室代码”部分函数依赖于课程号+课程名。 三、完全函数依赖 设R(U)是属性集U上的关系,x、y是U的子集,x是x的真子集。若对于R(U)的任何一个可能的关系,有x→y但x→y,则称y完全函数依赖于x,记作X→FY。 所谓完全依赖是说明在依赖关系的决定项(即依赖关系的左项)中没有多余属性,有多余属性就是部分依赖。 例如设关系模式R,R=R(学号,姓名,班号,课程号,成绩),易知: “(学号,班号,课程号)→成绩”是R的一个部分依赖关系。 因此有决定项的真子集(学号,课程号),使得“(学号,课程号)→成绩”成立,且“学号→成绩”或“课程号→成绩”成立,“(学号,课程号)→ 成绩”是R的一个完全依赖关系。 四、传递函数依赖 设R(U)是属性集U上的关系,x、y、z是U的子集,在R(U)中,若x→y,但y→x,若y→z,则x→z,称z传递函数依赖于x,记作X→TZ。 例如在一个学校中,每门课均是某一位老师教,但有些老师可教多门课,则有关系“教学”如表3.1所示。 由以上关系不难分析,课程名→职工号、职工号→课程名,但职工号和其他属性的函数关系中都是决定因素,即职工号→老师名、职工号→职称,在这种情况下,老师名、职称传递函数依赖于课程名。 表3.1 教学表 课程名 职工号 老师名 性别 出生日期 职称 英语 T1 张平 男 55.6.3 教授 数学 T2 王文 女 62.10.5 副教授 C语言 T3 李迎 女 62.10.5 副教授 数据库 T2 王文 女 62.10.5 副教授
文章TAG:
数据 数据库 空集 原因 数据库空集原因有哪些