习题四多表操作一、单选题1、在VisualFoxPro中,最多允许同时打开_______个数据表和自由表。A)225B)10C)32767D)65500解析:在VisualFroPro中,最多允许同时打开32767个表。答案:C2、执行下列一组命令之后,选择“职工”表所在工作区的错误命令是______。(2003.09)CLOSEALLUSE仓库IN0USE职工IN0A)SELECT职工B)SELECT0C)SELECT2D)SELECTB解析:在VisualFoxPro中,SELECT0是选择一个编号最小并且没有使用的工作区。本题执行上述命令后,“职工”表在2号工作区。如果想在工作区间切换,可以用SELECT工作区号来指定工作区,也可以用SELECT工作区别名来指定工作区,“职工”表系统默认的工作区别名是表名或字母B。答案:B3、每个工作区可以同时打开________个数据表文件。A)1B)10C)2D)15解析:每个工作区可以同时打开一个数据表文件,每个数据表文件也只能在一个工作区中打开。答案:A4、在工作区1中已打开数据表XS.DBF,则在工作区5中再次打开的操作是_________。A)USEIN5AGAINB)USEXSIN5AGAINC)非法操作D)USEXSIN3解析:一个数据表在多个工作区中打开,除第一次打开外,都要用AGAIN答案:B5、两表之间“临时性”联系称为关联,在两个表之间的关联已经建立的情况下,有关“关联”的正确叙述是_______。(2003.09)A)建立关联的两个表一定在同一个数据库中B)两表之间“临时性”联系是建立在两表之间“永久性”联系基础之上的C)当父表记录指针移动时,子表记录指针按一定的规则跟随移动D)当关闭父表时,子表自动被关闭解析:在VisualFoxPro中,能够控制表间记录指针关系的临时联系称为关联。建立“临时性”联系的两个表可以不属于同一个数据库,并且与是否存在“永久性”联系无关。当父表指针移动时,子表的记录指针也会按照一定的规则跟随移动。表的打开与关闭是独立进行的,一个表的打开与关闭不影响另一表。答案:C6、VFP可以支持多少个工作区_____。A)225B)32767C)255D)1287、命令SELECT0的功能是。A)随机选择一个工作区的区号B)选择区号最小的空闲工作区C)选择区号最大的空闲工作区D)选择当前工作区的区号加1的工作区8、工资表gzb中含有基本工资字段,有一增资数据表ZZ(含有增资额字段),正确执行下列命令序列后,正确的结果____。USEgzbINDEXON编号TAGgzbhSELECTBUSEzzINDEXON编号TAGzzbhSELECTAUPDATEON编号FROMBREPLACE基本工资WITH基本工资+B.增资A)将zz与gzb编号相同的记录的zz.增资额+gzb.基本工资,再赋值给gzb.基本工资B)将zz与gzb编号不同的记录的zz.增资额+gzb.基本工资,再赋值给gzb.基本工资C)将zz中增资额的总和加上gzb中每一条记录的基本工资,再赋值给gzb.基本工资D)将zz与gzb编号相同的记录的zz.增资额赋值给gzb.基本工资9、执行如下命令序列,最后一条命令在屏幕显示的正确结果是___。SELECTAUSEcourseSELECTBUSEstudentSETRELATIONTORECNO()INTOASELECTCUSEscore)SETRELATIONTORECNO()INTOBSELECTBGO8?RECNO(),RECNO(1),RECNO(3)A)8,8,8B)8,8,1C)1,8,8D)8,1,810、在数据表A、B、C间已建立A→B连接,欲再建立B→C的连接,以构成A→B→C的连接,则。A)在保持A→B连接的基础上不能再建立B→C的连接,但可以建立A→C的连接B)使用不带ADDITIVE子名的SETRELATION命令即可C)必须使用带ADDITIVE子名的SETRELATION命令D)在保持A→B连接的基础上不能再建立B→C的连接11、在设置数据库中数据表之间的永久关系时,正确的说法是____。A)父表必须建立主索引,子表可以不建立索引B)父表必须建立主索引,子表可以建立普通索引C)父表必须建立主索引,子表可以建立候选索引D)父表子表都必须建立主索引12、要在数据库中数据表之间建立一对多关系,“一方”的关键字段必须首先建立_____。A)主索引B)候选索引C)唯一索引D)普通索引13、设有两个数据库表,父表和字表之间是一对多的联系,为控制子表和父表的关联,可以设置“参照完整性规则”,为此要求这两个表________。(2005.04)A)在父表连接字段上建立普通索引,在子表连接字段上建立主索引B)在父表连接字段上建立主索引,在子表连接字段上建立普通索引C)在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引D)在父表和子表的连接字段上都要建立主索引解析:参照完整性与表之间打联系有关,是指当插入,删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的检查对表的数据操作是否正确。在数据库设计器中设计表之间的联系时,要在父表中建立主索引,在子表中建立普通索引,然后通过父表的主索引和子表的普通索引建立起两个表之间的联系。答案:B14、下面有关表间永久联系和关联的描述中,正确的是_________。(2005.09)A)永久联系中的父表一定有索引,关联中的父表不需要有索引B)无论是永久联系还是关联,子表一定有索引C)永久联系中子表的记录指针会随父表的记录指针的移动而移动D)关联中父表的记录指针会随子表的记录指针的移动而移动解析:虽然永久联系在每次使用表时不需重新建立,但永久联系不能控制不同工作区中记录指针的联动。所以在开发VisualFoxPro应用程序时,不仅需用永久联系,有时也需使用能够控制标间记录之关系的临时联系,这种临时联系成为关联。建立临时联系的索引关键字,一般应该是父表的主索引,字表的普通索引。答案:B15、数据库表的字段可以定义规则,规则是_____。(2004.04)A)逻辑表达式B)字符表达式C)数值表达式D)前三种说法都不对解析:在表设计器的“字段”选项卡中有一组定义字段有效性规则的项目,它们是“规则”,“信息”,“默认值”。“规则”是逻辑表达式,“信息”是字符串表达式,“默认值”的类型则以字段的类型确定.答案;A16、在VisualFoxPro中,可以对字段设置默认值的表是_______。A)数据库表B)自由表C)自由表和数据库表D)以上都不对解析:数据库表可以使用长表名,在表中可以使用长字段名,数据库表可以为字段指定标题、添加注释、指定默认值、输入掩码、规定字段级规则和记录级规则。答案:A17、希望用户输入至“身高”字段中的数值必须大于0,应使用_____数据字典项目来进行此检验操作。A)验证规则B)字段标题C)字段说明D)默认值18、参照完整性的规则不包括___。(2002.09)A)更新规则B)删除规则C)插入规则D)检索规则解析:参照完整性与表之间的联系有关,是指单插入、删除或修改一个表的数据时,通过参照引用相互联系的另一个表中的数据来检查对表的数据操作是否正确。参照完整性规则包括更新规则、删除规则和插入规则。答案:D19、如果在建立数据库表stock.dbf时,将单价字段的字段有效性规则设为“单价0”,通过该设置,能保证数据的_____。(2002.09)A)实体完整性B)域完整性C)参照完整性D)表完整性解析:域完整性主要用于检查数据输入的正确性。它包括:数据类型、取值范围、精度以及是否允许空值等。本题中单价字段的有效性规则为“单价0”,这是对数据取值范围进行规定,因此能保证数据的域完整性。答案:B20、在VisualFoxPro中,建立数据库时,将年龄字段值限制在12~40岁之间的这种约束属于_____。(2003.04)A)实体完整性约束B)域完整性约束C)参照完整性约束D)视图完整性约束解析:域完整性主要用于检验数据输入的正确性。它包括:数据类性、取值类型、精度以及是否允许空值等。本题中将年龄字段值限制在12~40之间,这是对数据取值范围进行规定,因此能保证数据的域完整性。答案:B21、VisualFoxPro的参照完整性规则不包括_____。(2003.04)A)更新规则B)删除规则C)查询规则D)插入规则解析:参照完整性与表之间的联系有关,是指但插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据来检查对表的数据操作是否正确。参照完整性规则包括更新规则、删除规则和插入规则。答案:C22、为了设置两个表之间的数据参照完整性,要求这两个表是_____。(2003.09)A)同一个数据库中的两个表B)两个自由表C)一个自由表和一个数据库表D)没有限制解析:参照完整性是关系数据库管理系统的一个很重要的功能。只有两个表是同一个数据库中的两个表时,这两个表之间才能设置参照完整性。自由表中不能建立主关键字,也就是无法建立表之间的联系,更无法设置来年各个表之间的参照完整性。答案:A23、数据库表可以设置字段有效性规则,字段有效性规则属于域完整性范畴,其中的“规则”是一个_____。(2003.09)A)逻辑表达式B)字符表达式C)数值表达式D)日期表达式解析:字符有效性规则用来指定该字段的值必须满足的条件,“规则”是逻辑表达式。字符有效性规则实现了域完整性,用于判断字符中输入的内容是否B)字符表达式合法。答案:A24、通过指定字段的数据类型和宽度来限制该字段的取值范围,这属于数据完整性中的_____。(2003.09)A)参照完整性B)实体完整性C)域完整性D)字段完整性解析:数据完整性一般包括:实体完整性、域完整性、参照完整性。实体完整性是保证表中记录唯一的特性,即在一个表中不允许有重复的记录。域完整性通过指明字段的数据类型和宽度来限制该字段的取值范围。参照完整性与表之间的联系有关,是指当插入、删除或修改一个表中数据时,通过参照引用相互关联的另一个表中的数据来检查对表的数据操作是否正确。答案:C25、数据库表可以设置字段有效性规则,字段有效性规则属于______。(2004.04)A)实体完整性范畴B)参照完整性范畴C)数据一致性范畴D)域完整性范畴解析:域完整性通过指明字段的数据类型和宽度来限制字段的取值范围。域完整性规则也称字段有效规则,建立字段有效性规则通常在“表设时器”中完成。答案:D26、如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时__。(2004.04)A)系统自动备份父表中被删除记录到一个新表中B)若子表中有相关记录,则禁止删除父表中记录C)会自动删除子表中所有相关记录D)不作参照完整性检查,删除父表记录与子表无关解析:参照完整性规则包括更新规则、删除规则、插入规则。删除规则规定了当删除父表中的记录时,如果选择“级联”,则自动删除子表中的所有相关记录;如果选择“限制”,若子表中相关的记录,则禁止删除父表中的记录;如果选择“忽略”,则不作参照完整性检查,即删除父表的记录时与子表无关。答案:C27、使用SQL语句增加字段的有效性规则,是为了能保证数据的____。(2004.09)A)实体完整性B)表完整性C)参照完整性D)域完整性解析:数据完整性一般包括实体完整性,域完整性和参照完整性。使用SQL语句为字段增加有效性规则,是为了保证数据的域完整性。答案:D28、有关参照完整性的删除规则,正确的描述是____。(2004.09)A)如果删除规则选择的是“限制”,则当用户删除父表中的记录时,系统将自动删除子表中的所有相关记录B)如果删除规则选择的是“级联”,则当用户删除父表中的记录时,系统将禁止删除与子表相关的父表中的记录C)如果删除规则选择的是“忽略”,则当用户删除父表中的记录时,系统不负责任何工作D)以上三种说法都不对解析:删除规则规定了当删除父表中的记录时,如果选择“级联”,则自动删除子表中的所有相关