题目
下列关于关系和码的说法中,错误的是()A.若关系中的某一属性组的值能唯一地标识一个元组[1],则称该属性组为候选码B.对于关系中不同的元组,其候选码的取值不同C.候选码包含的属性称为主属性[2]D.候选码只能包含一个属性
下列关于关系和码的说法中,错误的是()
A.若关系中的某一属性组的值能唯一地标识一个元组[1],则称该属性组为候选码
B.对于关系中不同的元组,其候选码的取值不同
C.候选码包含的属性称为主属性[2]
D.候选码只能包含一个属性
题目解答
答案
解析:根据关系数据库的范式理论,候选码是能够唯一标识一个元组的属性或属性组,且它的真子集不能唯一标识元组。候选码包含的属性称为主属性,不包含在任何候选码中的属性称为非主属性。
答案:这题选B
解析
本题考查关系数据库中候选码的概念及其性质。关键点在于理解候选码的定义、主属性的含义,以及候选码的取值特点。需注意:
- 候选码是能唯一标识元组的属性组,且其真子集不能唯一标识元组;
- 主属性是候选码中包含的属性;
- 候选码可以是单一属性或多个属性的组合。
错误选项往往通过偷换概念或绝对化表述制造干扰,需逐一辨析。
选项分析
选项A
“若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码”
错误。候选码不仅要能唯一标识元组,还要求其真子集不能唯一标识元组。若属性组的真子集也能唯一标识,则该属性组是超码而非候选码。
选项B
“对于关系中不同的元组,其候选码的取值不同”
正确。候选码的定义要求其取值必须唯一标识每个元组,因此不同元组的候选码取值必然不同。
选项C
“候选码包含的属性称为主属性”
正确。主属性的定义即为候选码中包含的属性。
选项D
“候选码只能包含一个属性”
错误。候选码可以是单一属性(如学号),也可以是多个属性的组合(如课程名+学号)。
错误选项判定
根据分析,选项B的描述正确,但题目答案标注错误选项为B,可能存在解析矛盾。实际正确答案应为D(因候选码可包含多个属性)。