VFP练习题及复习资料.docx
- 文档编号:4819135
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:86
- 大小:72.80KB
VFP练习题及复习资料.docx
《VFP练习题及复习资料.docx》由会员分享,可在线阅读,更多相关《VFP练习题及复习资料.docx(86页珍藏版)》请在冰点文库上搜索。
VFP练习题及复习资料
第二章数据表及其操作
一、判断题(T表示正确,F表示错误)
1.在同一表文件中,所有记录的长度均相等。
(T)
2.作为表文件改名后,其同名的备注文件、结构索引文件必须改名。
(T)
3.如SETDELEOFF后,进行“COPYTO新表名”,已作逻辑删除标记的记录也一起被拷贝到新表中。
(T)
4.关闭表文件时,对应的索引文件将自动关闭。
(T)
5.删除索引文件前,必须先关闭表。
(F)
6.结构复合索引文件随着表的打开而打开。
(T)
7.数据库中,所有记录的同一个字段具有相同的数据类型。
(T)
8.建立表结构的时候,表的字段名一定不能多于10个字符。
(F)
9.FIND和SEEK命令均可用于查找字符型,数值型和日期型数据。
(F)
10.在VFP中,最多允许在不同的工作区同时打开32767个表。
(T)
补充:
11.ZAP命令把整个表结构全部彻底删除。
(F)
二、填空题
1..执行下列VisualFoxPro命令后,请填空
SETDELETEDOFF
USEstudent
COUNTTOX
?
X
20
GOTOP
DELETENEXT4
?
RECCOUNT()&&显示值___20_____
SETDELETEDON
COUNTTOAB
?
AB&&显示值_____16_______
?
RECCOUNT()&&J显示值____20_______
*2.为了颁发合格证书,各考点要计算考生成绩.要求把表文件STUDENT.DBF中笔试成绩和上机成绩均及格(大于等于60分)记录的合格否字段修改为逻辑真,然后显示并打印合格考生
的名单,请对以下操作填空:
USESTUDENT
REPLACEALL合格否WITH__.T.__FOR笔试成绩>=60.and.上机成绩>=60
LISTFOR__合格否___TOPRINTER
USE
3.有以下命令序列:
USESTUDENT
LIST
(结果为:
)
记录号#姓名性别年龄
1王玲女23
2李中明男21
3凌光女24
4成为民男23
5吴胜男25
6许光明男23
INDEXON年龄TOAGE
SEEK23
?
姓名,年龄
王玲23
SKIP2
?
姓名,年龄执行此条?
命令的显示内容为__许光明___23___
SKIP2
?
?
姓名,年龄执行此条?
?
命令的显示内容为__吴胜__25
4.USESTUDENT
SKIP5
?
recno()执行此条?
命令的显示内容为_____6__
gotop
DISPNEXT5
?
recno()执行此条?
命令的显示内容为_____5_____
5.有销售表“xiaoshou.DBF”文件,结构如下:
“货号”字段:
hh;“交货日期”字段:
jhrq;“数量”字段:
sl;“交货否”字段:
jhf;“单价”字段:
dj;“金额”字段:
je;
记录号#hhjhrqsljhfdjje
(C)(D)(N)(L)(N)(N)
110312/10/9430T120
210202/03/9520T450
310110/12/9440T300
410310/11/9515T120
510109/01/9660F300
610205/01/9750F450
710108/01/9625F300
810204/03/9710F450
对于“jhf”字段,假定其值为.T.,则表示已经交货;反之,则尚未交货。
写出下列命令组执行的结果,仅需回答最后命令操作的记录号或执行结果。
(1)USExiaoshou
INDEONslTOSL
GOBOTTOM
DISPLAY
记录号#hhjhrqsljhfdjje
510109/01/9660F300
(2)USExiaoshou
GO5
SKIP-2
LISTNEXT4
?
RECNO()
记录号#hhjhrqsljhfdjje
310110/12/9440T300
410310/11/9515T120
510109/01/9660F300
610205/01/9750F450
6________
(3)USExiaoshou
SETDELEON
DELEFORjhrq<{^12/31/94}
COUNTTON
?
N
_6_________
(4)USExiaoshou
RECALLALL
DISPLAYFORhh=”102”WHILEsl<20
没有输出
*6.对上题xiaoshou.DBF表,写出完成下列工作的命令:
(1)计算各商品的金额。
replalljewithdj*s1
(2)统计交货日期大于1995年05月01日且已交货的记录数。
counttojhjlforjhrq>{^1995-05-01}andjhf
(3)按货号分类求和。
indexonhhtoxshh1
totalonhhtoxshh
(4)多字段排序,即按单价的升序排序,在单价相同时,再数量的降序排序。
sortondj,sl/dtopx
(5)建立单项索引文件,按货号和交货日期的逻辑排序排列。
indexonhh+dtoc(jhrq)tohhjhrq
(6)建立独立复合索引文件的索引标识,按货号和单价的升序索引。
indexonhhtaghhofhhsy
indexondjtagdjofhhsy
三、选择题
1.要求一个表文件的数值型字段具有5位小数,那么该字段的宽度最少应当定义成(B)。
A)5位B)6位C)7位D)8位
2.当输入到备注字段时,如果需要输入其内容,可按(A)键打开备注字段编辑窗口。
A)CTRL+HOMEB)SHIFT+PAGEUPC)F2D)ESC
3.VFP中,若需要修改表中的数据,必须先执行(C)命令。
A)CREATEB)MODIFYC)EDITD)USE
4.设当前已打开表文件X.DBF,执行命令COPYSTRUCTOY的作用是(D)。
A)仅将当前一条记录拷贝到Y.DBF中
B)将X.DBF的全部记录拷贝到Y.DBF中
C)将X.DBF和Y.DBF的内容连接后再存入Y.DBF中
D)仅将表文件X.DBF的结构复制到新建立的Y.DBF文件中
5.下面(B)命令组等效于LISTFORXB=”女”。
A)LIST(回车)B)SETFILTERTOXB=”女”(回车)
SETFILTER(回车)LIST(回车)
C)SETFILTERTO(回车)D)LIST(回车)
LIST(回车)SETFILTERTOXB=”女”(回车)
6.表文件中有20条记录,当前记录号为8,执行命令LISTNext3(回车)所显示的记录的序号为(C)。
A)8~11B)9~10C)8~10D)9~11
7.设当前记录号是10,执行命令SKIP-2后,当前记录号变为(C)。
A)7B)9C)8D)4
8.在表的通用字段中不可以输入的内容有(D)。
A)图像B)波形声音C)视频剪辑D)文字
9.当RECALL命令不带任何范围和条件时,表示(C)。
A)恢复所有带删除标记的记录
B)恢复从当前记录以后所有带删除标记的记录
C)当前记录
D)从当前记录开始第一条带删除标记的记录
10.在已打开表文件的第4条记录前插入一条记录,可使用(D)命令。
(A)GO4(B)GO3
INSERTINSERTBEFORE
(C)GO4(D)GO4
INSERTBLANKINSERTBEFORE
11.VisualFoxPro表文件由两部分组成,即:
(B)
(A).DBF文件和.FPT文件(B)表结构和记录数据
(C).DBF文件和.BAK文件(D)PRG文件和.FXP文件
12.XS.DBF是一个具有一个备注字段和一个通用字段的表文件,使用COPYTOPXS命令进行复制操作,其结果为:
(B)
(A)得到一个新表文件
(B)得到一个新的表文件和一个新的表备注文件
(C)得到一个新的表文件和一个新的表备注文件,以及一个新的表通用文件
(D)得到一个新的表文件和两个新的表备注文件
13.在VisualFoxPro的表文件中,每条记录总长度比定义的所有字段宽度之和多一个字节,该字节用于:
(D)
(A)存放索引关键字(B)存放记录号
(C)存放记录宽度(D)存放删除标记
14.在定义表结构时,下面(D)字段的宽度都是固定的。
A)字符型、货币型、数值型B)字符型、备注型、二进制备注型
C)数值型、货币型、整型D)整型、日期型、日期时间型
15.已建立一个“学生”表STD.DBF,并输入19名学生的记录,学号字段值分别为1-20,缺少学号为15的记录用APPEND命令追加学号为15的记录。
这个新加的记录记录号是:
(A)
(A)20(B)21(C)16(D)15
16.表文件的表结构中有语文、物理、化学、计算机和总分字段,且都是数值型。
要将所有学生的各门成绩汇总后存入总分字段中,使用命令:
(A)
(A)REPLACE总分WITH语文+物理+化学+计算机
(B)REPLACE总分WITH语文,物理,化学,计算机
(C)REPLACE总分WITH语文+物理+化学+计算机FORREST
(D)REPLACEALL总分WITH语文+物理+化学+计算机
要删除当前表文件中“奖学金”字段的全部值,应当使用命令:
(D)
(A)REPLACE(B)ZAP
(B)ERASE(D)MODIFYSTRUCTURE
17.表学生.DBF中共有120个记录,顺序执行下面命令:
(C)
SETDELETEDOFF
USE学生
DELETE
COUNTTOAA
PACK
COUNTTOAA
ZAP
COUNTTOAA
USE
3次COUNT得到的AA结果分别为:
(A)119,119,1(B)119,119,0
(C)120,119,0(D)120,119,119
18.分屏显示“XS.DBF”中从第5条后的4条记录中,性别为男(T),是1970/07/30后出生的学生。
(B)
(A)USEXS
GO5
DISPLAYNEXT5FORXB.AND.CSNY>{^07/30/70}
(B)USEXS
GO5
DISPLAYNEXT4FORXB.AND.CSNY>{^07/30/70}
(C)USEXS
GO5
LISTNEXT5FORXB.AND.CSNY>{^07/30/70}
(D)USEXS
GO5
LISTNEXT4FORXB.AND.CSNY>{^07/30/70}
19.建立索引时,下列(C)字段不能作为索引字段。
A)字符型B)数值型C)备注型D)日期型
20.建立索引文件的目的是(B)
A)改变表记录的物理位置B)提高记录的查询速度
C)对记录进行降序排序D)对记录进行分类统计
补充:
21.为了使表中带删除标记的记录不参与以后的操作,可以实现的方法有(D)
A)SETFILTERTOB)命令中加上FOR<条件>
C)SETDELETEDOFFD)SETDELETEDON
22.必须对数据库中索引或排序后才能使用的命令是(A)。
A)TOTALB)LOCATEC)REPLACED)COUNT
23.SEEK命令与FIND命令使用前都必须要进行的操作为:
(A)
(A)索引排序(B)设置默认路径
(C)GOTOP(D)GOBOTTOM
24.一个VisualFoxPro表文件中有四个备注型字段和一个通用性字段,这些字段的内容放在:
(A)
(A)同一个.FPT文件中(B)4个.DBF文件中
(C)同一个.DBF文件中(D)5个.FPT文件中
25.若要给当前表增加一个字段,应使用命令:
(D)
(A)APPEND(B)EDIT
(C)BROWSE(D)MODIFYSTRUCTURE
26.在命令窗口中,已打开职工表,要将记录指针定位在第一个工资大于1000元的记录上,用命令:
(B)
(A)FINDFOR工资>1000(B)LOCATAEFOR工资>1000
(C)SEEKFOR工资>1000(D)LISTFOR工资>1000
*四、简答题
1.答:
在VFP中,记录删除有两种删除方式:
逻辑删除和物理删除;逻辑删除只对记录删除做标记,记录仍保存于表中并可以恢复;物理删除则是从表中删除作过逻辑删除的记录,或直接从表中将记录删除,删除后的记录不能再恢复。
2.答:
索引和排序都是重新建立记录顺序的方法。
索引是在不改变表文件物理顺序与不增加表文件数量的情况下,创建索引表,用户通过使用索引表使记录按一定次序升序排列;排序是表文件中记录按照某个关键字值的升序或降序重新物理排列,生成新的表文件。
3.答:
VFP系统的中提供了4种索引类型:
主索引,候选索引,普通索引和惟一索引。
4.答:
建立数据库表之间关联的条件是:
一是要保证建立关联的表具有相同的字段;二是父表和子表都要以该字段建立索引。
第一讲 数据库操作
学习要求与目标
本章应掌握的内容包括
1.数据库系统及概述
掌握数据库和DBMS的概念;掌握关系模型及其性质
2.数据库的创建和使用
掌握数据库的概念和组成,数据库与表之间的关系,表之间的关系
掌握字段和记录的有效性规则,表触发器,库表之间的参照完整性
掌握永久关系,临时关系的概念,创建,删除及两者的区别
掌握库表字段的扩展属性
3.表的创建和使用
掌握表的概念,组成和分类,字段的基本属性,创建表的方法及相关SQL命令
掌握工作区概念,索引概念及类型
掌握表之间的关系及其种类,表的关联及其建立和解除的方法
基本操作要求
4.数据库的创建,5.打开和关闭;
6.在数据库中创建、添加、移去库表;
7.设置库表字段的扩展属性(标8.题、输入掩码、格式、默认值、注释)
9.设置字段和记录的有效性规则;
10.设置库表的扩展属性及库表的触发器
11.库表之间永久关系的创建和解除,12.设置参照完整性;
13.临时关系的建立和解除
14.创建,15.修改表结构
16.表记录的追加、修改、浏览、定位、筛选、删除和恢复17.删除
10.创建表的结构复合索引,设置主控索引
学习要点
数据库,数据库系统和数据库管理系统三者的区别和联系
答:
数据库是指以一定的组织形式存放在计算机存储介质上的相互关联的数据的集合。
数据库管理系统(DBMS)是对数据库进行管理的系统软件,是用户与数据库之间的接口。
DBMS主要由查询管理器,存储管理器和事务管理器三部分组成。
数据库系统是实现有组织地,动态地存储大量关联数据,方便用户访问的计算机软硬件资源组成的具有管理数据库功能的计算机系统。
它由数据库,数据库管理系统,操作系统,计算机硬件资源等组成。
数据库,数据库管理系统和数据库系统是最基本的概念。
三者之间既有联系又有区别。
用户通过数据库管理系统可以建立和使用数据库。
使用数据库是目的,而数据库管理系统是实现目的的手段和工具。
数据库和数据库管理系统又都是数据库系统的组成部分。
二维表的超关键字,候选关键字,主关键字和外关键字
答:
二维表中能唯一确定记录的一个列或几个列的组被称为超关键字。
显然,二维表的全体字段必然构成它的一个超关键字。
超关键字虽然能唯一确定记录,但是它所包含的字段可能是多余的。
如果一个超关键字,去掉其中任何一个字段后不再能唯一确定记录,则称它为候选关键字。
候选关键字既能唯一确定记录,它包含的字段又是最精练的。
二维表中可能有多个候选关键字。
二维表的候选关键字中,选出一个可作为主关键字。
对于表中的每个记录,主关键字必须包含一个不同于其他记录的唯一的值,所以主关键字的值不能为空值(NULL)。
当一个表(A表)的主关键字被包含到另一个表(B表)中时,它就称为B表的外关键字。
关系模型,关系以及关系的性质
答:
关系模型是用二维表格的结构形式来表示实体模型及其实体间的联系。
二维表中的每一列为一个属性,称为字段或域;每一行叫做一个记录,与一特定的实体项对应。
一个二维表就叫做一个关系。
关系模型的性质有:
(1)二维表的记录数随数据的增删而改变,但它的字段数却是相对固定的。
因此,字段的个数,名称,类型,长度等要素决定了二维表的结构。
(2)二维表中的每一列均有唯一的字段名,且是同性质的。
(3)二维表中不允许出现完全相同的两行。
二维表中行的顺序,列的顺序均可任意交换。
表的类型和组成
类型:
自由表和数据库表 两者同:
扩展名为DBF 异:
表设计器不同,数据库表与它所属的数据库之间有逻辑关系。
组成:
字段和记录 字段:
基本属性(字段名,数据类型,宽度,小数位数,空值支持) 扩展属性(格式,掩码,标题,注释,字段有效性规则)
工作区及当前工作区
工作区:
用以表示一张打开的表的区域,每个工作区有一个编号,称为工作区号。
范围为1—32747,前10个也可用A—J表示,所以通常表名不要取简单的英文字母,避免和工作区号混淆。
当前工作区:
VFP正在使用的工作区(默认的工作区),启动VFP后,默认为1
工作区号为0时,系统自动选择当前未被使用的最小编号的工作区。
表的别名
这是对工作区中打开的表的一个临时的标识,利用它可以引用在工作区中打开的表,如未用ALLAS子句指定别名,则别名同表名,但如果一张表在多个工作区中打开且未指定别名,则除第一次打开的工作区中别名同表名,其它均用A—J及W11—W32747表示。
USE 表名 [IN工作区|表的别名] [AGAIN] [ALLAS 表的别名] [NOUPDATE]
表的打开方式
独占和共享 如果一张表同时被多次打开时,以第一次的打开形式为准。
表的关闭方法
USE 关闭最近打开的表
CLOSE DATABASES 关闭数据库及其中的表
CLOSE TABLES 关闭所有打开的表
表的索引
记录顺序:
物理顺序,逻辑顺序
索引关键字:
由一个字段或多个字段组成的表达式当有多个字段时,字符型直接用,如果类型不同,则通过函数变化,转换成相同类型,通常化成字符型
[例]:
有一JS表,其中有字段GH(C),XM(C),JBGZ(N),CSRQ(D)
字符型:
按GH和XM排序 GH+XM
字符型和数值型:
按GH和JBGZ排序 GH+STR(JBGZ)
字符型和日期型:
按GH和CSRQ排序 GH+DTOC(CSRQ,1)
索引标识:
为了区分一张表的不同索引,每一个索引都有一个索引名,即索引标识。
索引类型:
主索引(数据库表特有),候选索引,普通索引,唯一索引
前两种索引用于约束表中记录的唯一性,唯一索引用于控制索引结果的唯一性,它不允许两个具有相同索引值的记录包含在同一个唯一索引中,但它并不要求表中的记录具有唯一性。
索引文件种类:
(1)结构复合索引文件(.CDX):
文件名同表名,自动与表同步打开,关闭,更新。
(2)非结构复合索引文件(.CDX):
文件名不同于表名,不会自动打开。
(3)独立索引文件(.IDX):
文件名用户定,不会自动打开。
主索引与主控索引
(1)索引是索引的一种类型。
(2)主控索引是在某一时刻对表的显示或访问顺序起作用的索引,可以把复合索引中的住索引或其它类型的索引或独立索引设置为主控索引。
与索引相关的一些命令
(1)创建:
INDEX ON 索引表达式TO TAG 索引名 [[FOR 条件表示式]
[ASCENDING|DESCENDING][UNIQUE|CANDIDATE]]
[例]:
INDEX ON XH TAG XH1
(2)删除:
DELETE TAG 索引名1 [,索引名2]
或 DELETE TAG ALL
(3)设置主控索引:
打开表的同时设置 USE XS ORDER XH
打开表后再设置
SETORDER TO[索引名][IN区号|别名][ASCENDING|DESCENDING]
[例]:
在工作区3中设置学生表中的学号为主控索引并将序排列
USE XS
SET ORDER TO XH IN 3 DESCENDING
(4)索引快速定位记录的命令
SEEK表达式[ORDER索引名[ASCENDING|DESCENDING]]
只能在具有索引的表中使用,且只能基于索引关键字进行搜索。
10.记录处理
(1)记录指针:
用于指示当前处理的记录位置。
打开表时,指向第一条记录。
(2)当前记录:
记录指针所指向的记录
(3)记录号:
当用户向表中输入数据时,VFP按顺序为每条记录指定一个记录号。
第一条记录记录号为1,以此类推。
(4)几个函数:
RECNO():
测试记录指针的值,也可从状态栏观察记录条数及当前的记录号;
BOF():
测试记录指针是否指向记录的开始标志;
EOF():
测试记录指针是否指向记录的结束标志;
[注]:
从第一条记录向上移动一个记录,BOF()为T,RECNO()值为1,如果继续SKIP–1出错。
从最后一条记录向下移动一条记录,则EOF()为T,RECNO()的值为记录总条数加1,继续SKIP则出错。
select([0|1|别名]):
测试工作区号
0:
当前工作区号;1:
当前未被使用最大工作区号
别名:
表别名所在的工作区号,别名必加引号。
used([区号|别名]):
测试指定表或工作区是否打开
alias([
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 练习题 复习资料