vfp等级考试复习题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一部分内容有关数据库、表的基本概念及操作1.成绩表中的成绩必须在0~100之间的规则是满足关系模型的________完整性。A.实体完整性B.域完整性C.参照完整性D.用户自定义完整性【解析】答案为B。在关系数据库中,完整性主要有域完整性、实体完整性和参照完整性三种类型。域完整性规定了属性的取值范围,由应用环境对数据的需求决定。实体完整性要求任一元组的主关键字的值不为空,且在所属的关系中唯一。参照完整性要求当一个元组的外部关键字的值不为空时,以该外部关键字的值作为主关键字的值的元组必须在相应的关系中存在。成绩必须在0~100之间是成绩表的成绩属性的取值范围的规定,属于域完整性。2.EMPTY(SPACE(3))和ISNULL(SPACE(3))函数的返回值分别为__________。【解析】答案为.T.、.F.。EMPTY()函数用来测试参数是否为空,当参数为空字符串、空格或0时返回真,为null返回假值,而ISNULL()函数用来测试参数是否为null值,只有参数为null的时候返回真,其余均返回假值。3.当数据库表移出数据库成为自由表之后,仍然有效的是________。A.字段的默认值B.表的记录的有效性规则C.结构复合索引D.表的触发器【解析】答案为C。当数据库表移出数据库成为自由表后,字段的扩展属性和数据库表的表属性都消失,因为这些信息是数据库表所特有的,如字段的标题、格式、字段有效性规则、默认值等以及表的长表名、记录的有效性规则、触发器等都消失。只有结构复合索引还保留着,结构复合索引文件中的主索引变成候选索引。4.下列________操作不会损坏相关表之间数据的一致性。A.删除了子表中的记录而没有删除主表中的相关记录B.删除了主表中的记录而没有删除子表中的相关记录C.在子表中插入记录的外部关键字的值是主表关键字中没有的D.在主表中修改了主关键字的值而没有同时修改子表中相关记录的外部关键字的值【解析】答案为A。相关表之间数据的一致性指的是相关表之间的主关键字和外部关键字之间数据的一致性。B、C、D选项的操作都会引起两张表的主关键字的值和外部关键字的值不一致。5.依次执行下列命令后,浏览窗口中显示的表的别名及当前工作区区号分别是_______。CLOSETABLESALLUSETSUSETSAGAININ5SELECT0USETSAGAINBROWSEA.B、2B.TS、2C.B、5D.E、2【解析】答案为A。该段命令的功能是:首先关闭所有的表,此时没有工作区被使用。USETS是在1号工作区打开TS表,此时1号工作区为当前工作区,别名就为表文件名TS。USETSAGAININ5是在5号工作区再次打开TS表,但是5号工作区未作为当前工作区,表的别名为E。SELECT0选择未被使用的工作区区号最小的工作区即2号工作区作为当前工作区。如果一张表在多个工作区被打开而未指定别名,则第一次打开的工作区中表的别名与表名同,其他工作区用A~J及W11~W32767表示,因此USETSAGAIN是再次打开TS表,此时TS表的别名为B。6.首先执行了CLOSETABLESALL命令,然后执行________命令,可以实现逻辑删除DZ表(读者表)中年龄超过25岁的所有记录(注:DZ表中含有CSRQ字段,日期型,为出生日期)。A.DELETEFORYEAR(DATE())-YEAR(CSRQ)25B.DELETEFROMDZWHEREYEAR(DATE())-YEAR(CSRQ)25C.DELETEFROMDZFORYEAR(DATE())-YEAR(CSRQ)25D.DELETEFROMDZWHILEYEAR(DATE())-YEAR(CSRQ)25【解析】答案为B。主要掌握DELETE命令和DELETE-SQL命令的功能。A选项能够实现逻辑删除,但是XS表必须事先打开且为当前工作区的表。C、D选项都是语法错误。7.已知DZ表的结构为:读者编号(DZBHC(8))、姓名(XMC(8))等,并且按照DZBH设置了结构复合索引,索引标识为DZBH,如果DZ表不是当前工作区的表,则下列________命令不能实现查找读者编号为“96010101”的记录。A.SELECTDZLOCATEFORDZBH=96010101B.SEEK960101ORDERDZBHINDZC.SELECTDZSETFILTERTODZBH=96010101D.SELECTDZSEEK96010101【解析】答案为D。LOCATEFOR命令是条件定位,根据给定的条件将记录指针定位到指定的记录。SETFILTERTO命令是记录的筛选,在当前工作区的表中筛选出满足条件的记录。SEEK命令可以实现查找的功能,但是必须要设置主控索引。8.已知表中已经建立了多个索引,则无论是否设置主控索引,都定位到同一条记录的命令是________。A.GOTOPB.GOBOTTOMC.GO5D.SKIP-1【解析】答案为C。GOTOP、GOBOTTOM、SKIP命令都是相对定位命令,它们受记录的逻辑顺序的影响。而GO5指的是跳转到5号记录,无论是否设置主控索引,记录的记录号是不会改变的。9.下列关于记录的删除的叙述,不正确的是________。A.DELETE命令和DELETE-SQL命令都要求表以独占方式打开B.PACK命令和ZAP命令要求表必须以独占方式打开C.PACK命令和ZAP命令可以实现彻底删除表中带有删除标记的记录的功能D.RECCOUNT()函数的返回值不受SETDELETEDON|OFF命令的影响【解析】答案为A。主要掌握表中记录删除的相关内容。DELETE命令要求表必须事先打开,而DELETE-SQL命令不必,且无论表是独占方式还是共享方式打开,都不影响删除标记的设置。PACK和ZAP命令要求表必须以独占方式打开,PACK彻底删除带有删除标记的记录,ZAP删除表中所有记录,仅保留表结构。RECCOUNT()函数返回表中的记录数,不受删除标记的影响。10.已知TS表中有DJ字段(单价,数值型),如果DJ不低于100,则设置BZ(备注,备注型)内容为“高档图书”,则下面哪条命令不能完成该功能________。A.USETSREPLACEBZWITH高档图书FORDJ=100B.UPDATETSSETBZ=高档图书WHEREDJ=100C.UPDATETSSETBZ=高档图书FORDJ=100D.UPDATETSSETBZ=IIF(DJ=100,高档图书,)【解析】答案为C。主要掌握UPDATE命令和REPLACE命令。前者的语法格式为:UPDATE表文件名SET字段名=值WHERE逻辑条件表达式。REPLACE命令的语法格式为:REPLACE字段名1WITH值1,字段名2WITH值2,…FOR逻辑条件表达式,REPLACE命令要求表必须事先打开,而且是当前工作区的表。11.已知TS表属于数据库TSK,如果不小心删除了TSK的相关文件,则要将TS表添加到其他数据库中,必须释放____________,释放的命令是___________________。【解析】答案为后链、FREETABLETS。数据库表和数据库之间通过双向链接相关联。一张数据库表只能属于一个数据库,如果意外损害了数据库文件,则必须释放后链才能添加到其他数据库中。12.已知成绩表(cj.dbf)的结构如下图,请完善下列各项命令。字段名类型宽度字段含义是否主键XHC6学号是KCDHC2课程代号是CJN3,0成绩(1)创建表结构的命令CREATETABLECJ(XHC(6),KCDHC(2),CJN(3,0))(2)给CJ表添加一个备注型字段BZALTERTABLECJADDCOLUMNBZM(3)将BZ字段的字段名改为CJBZALTERTABLECJRENAMECOLUMNBZTOCJBZ(4)为CJ表添加一条记录:08010101,02,60INSERTINTOCJ(XH,KCDH,CJ)VALUES(08010101,02,60)(5)将所有CJ不及格的记录的CJBZ字段内容设置为“需要补考”UPDATECJSETCJBZ=需要补考WHERECJ60(6)根据KCDH字段升序排序,当KCDH相同时按照CJ升序排序,索引标识名为KCCJINDEXONKCDH+STR(CJ,3)TAGKCCJ(7)将成绩表所有08级的考生的考试记录做删除标记(XH的前两位表示年级)。DELETEFROMCJWHERELEFT(XH,2)=08【解析】该类题目主要要求掌握表的一些相关命令。因此要熟悉每一种命令的功能以及命令格式。13.已知TS表和JY表的结构如下,TS表结构JY表结构字段名类型宽度字段含义字段名类型宽度字段含义shC20书号dzbhC8读者编号smC50书名shC20书号zzC40作者jsrqD8借书日期djN5,1单价hsrqD8还书日期图书表TS的记录如下:记录号书号书名作者单价1I247.5/8888P女奴:天命之择林政482I247.5/8880P支离破碎石康43.63C912.1-49/129P卡耐基经典小故事全集(美)戴尔·卡耐基39.84K891.26-49/2P礼仪是一种资本:日常礼仪的300个细节李洁39.85H1/104P中国语文杜纯梓986F239.22/14P中国审计体系研究《中国审计体系研究》课题组编著48借阅表JY的记录如下:记录号读者编号书号借书日期还书日期105030815I247.5/8888P2008-05-012008-05-23205030815I247.5/8880P2008-06-122008-06-17306030828I247.5/8888P2008-12-112009-01-24406030828C912.1-49/129P2008-11-012008-11-21506030828I247.5/8880P2008-08-012008-09-016A030013I247.5/8888P2008-11-082008-12-017A030013C912.1-49/129P2008-05-122008-05-198A030013K891.26-49/2P2009-05-012009-05-119A030013I247.5/8880P2008-09-112008-09-21TS表的候选关键字是SH,JY表的候选关键字是DZBH+SH,若JY表中所有的SH值都来自TS表,则两张表之间是一对多关系。其中主表是TS表,子表是JY表。如果在两张表之间建立永久关系,则必须设置主表TS表中以SH字段为索引关键字建立主索引或候选索引,在子表中以SH字段建立普通索引。两张表的记录如上表所示,如果两张表之间创建了参照完整性:更新级联、删除限制和插入限制。就两张表的已知数据而言,如果把TS表的第3号记录的书号改为“C912.1-49/110P”,则JY表中有2条记录被更改,如果把JY表中的第8号记录的书号改为“F252/265P”,则TS表中有0条记录被更改。如果要删除TS表中的第5号记录,则允许吗?允许如果要求只有登记入库的书才能被借阅,则设置TS表和JY表之间的参照完整性规则为插入限制。【解析】掌握数据库表之间的关系,以及永久关系的建立和参照完整性的设置。第二部分内容程序阅读与改错1.阅读下列程序,回答指定问题。SETTALKOFFCLEARUSESALARYDOWHILE.NOT.EOF()IF实发工资=250SKIPLOOPENDIFDISPLAY&&短路SKIP&&短路ENDDOCLOSEDATABASERETURN该程序完成的功能是;LOOP语句的功能是。【解析】答案是:程序完成的功能是显示实发工资低于250元(不含250)的记录信息。LOOP语句的功能是当检验当前的记录满足“实发工资=250”条件时,不执行语句DISPLAY和SKIP(又称为将其短路)。2.给程序填充,使其具有以下功能:根据学生成绩表(CJ)中学生的考试成绩,按下表的划分标准,给出相

1 / 33
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功