VFP练习题及答案3 下载本文

(三)表的创建和使用

1.在定义表结构时,某些数据类型的字段的宽度是由VFP系统给定的。以下属于这样的数据类型的有 。 A、字符型

B、备注型

C、通用型

D、日期型

2.在下列数据类型的字段中,不能作为索引表达式的字段是 。

A、通用型

B、数值型

C、字符型

D、日期型

3. 建立索引时, 字段不能单独作为索引字段。

A、字符型 B、数值型 C、日期型 D、备注型 4.函数SELECT(1)的返回值是 。 A、当前未被使用的最小工作区号 C、当前工作区号

B、当前未被使用的最大工作区号 D、选择1号工作区作为当前工作区

5.函数SELETE ( 0 ) 的返回值是 。 A、当前工作区号

C、当前未被使用的最大工作区号

B、当前未被使用的最小工作区号 D、当前已被使用的最小工作区号

6.打开一张空表后,分别用函数EOF( )和BOF( )进行测试,其测试结果一定是 。 A、.T.和.T.

B、.F.和.F.

C、.T.和.F.

D、.F.和.T.

7.已知xs表中有10条记录。若在VFP命令窗口中依次执行如下命令:

USE xs GO BOTTOM SKIP

则EOF()函数和RECNO()函数的返回值分别是 。 A、.F.,10 B、.T.,10 C、.T.、11 D、.F.,11

8. 在VFP的命令窗口中执行如下命令后,被打开的表所在的工作区编号和表别名分别是:______。

CLOSE TABLES ALL

USE JS ALIAS TEACHER IN D A、4、TEACHER B、1、JS C、1、TEACHER D、4、JS_D

9. 设VFP中的默认目录中存在学生表(XS.DBF)和成绩表(CJ.DBF),且两张表都是关闭的。执行如下的程序段后的输出为_____。 SELECT 4

1

CLOSE TABLE ALL USE XS USE CJ IN 0 ? SELECT( )

A、1 B、2 C、3 D、4

10.在VFP支持的如下SQL命令中,可用于修改表结构的命令是:_____。

A、INSERT-SQL B、DELETE-SQL C、ALTER TABLE-SQL D、UPDATE-SQL

11.下列命令中可以把“bjmc”(班级名称,字符型,宽度为12)字段添加到XS表中的是: 。

A、ALTER TABLE xs INSERT COLUMN bjmc C(12) B、ALTER TABLE xs ADD COLUMN bjmc C(12) C、ALTER TABLE xs DROP COLUMN bjmc C(12) D、ALTER TABLE xs APPEND COLUMN bjmc C(12)

12. 已知教师表(JS)中含有jbgz(基本工资)、gzrq(工作日期)等字段,下列命令中能正确地将JS表中

的工龄在30年以上(含)的教师的工资加10%的命令是_____。 A、UPDATE JS SET JBGZ=JBGZ+10% WHERE GZRQ>=30

B、UPDATE JS SET JBGZ=JBGZ*110% WHERE YEAR (DATE ())-YEAR (GZRQ)>=30 C、UPDATE JS SET JBGZ=JBGZ*1.1 WHERE YEAR (DATE ())-YEAR (GZRQ)>=30 D、UPDATE JS SET JBGZ=JBGZ*1.1 WHERE GZRQ>=30

13.在VFP中,对于数据库表使用INDEX ON命令可以创建的索引类型有:_____。

A、主索引 B、候选索引 C、唯一索引 D、普通索引 14. 关于索引,下列说法中正确的是: 。

A、唯一索引的索引表达式不能有重复值

B、若将自由表变为数据库表,则其原有的候选索引将自动转为主索引 C、只有主索引才能作为主控索引使用 D、候选索引的索引表达式不能有重复值 15. 以下说法中正确的是 。

A、唯一索引的索引表达式不允许有重复值 B、自由表和数据库表均可以建立结构复合索引文件

C、表中若创建了主索引,则索引文件打开后,该表记录即以主索引排序 D、在自由表中只能创建一个主索引

16.VFP中的索引文件有三种类型,其中能自动地与表同步打开、更新和关闭的是 。

2

A、结构复合索引文件 B、非结构复合索引文件

C、独立索引文件 D、以上三者均有此功能

17. 用户在创建某个表的结构时,使用了通用型字段且为表创建了普通索引,则在保存该表结构后,系统会在磁盘上产生 个文件。

A、1 B、2 C、3 D、4

18. 学生表(XS.DBF)的表结构为:学号(XH,C,8),姓名(XM,C,8),性别(XB,C,2),班级(BJ,C,6),用INSERT-SQL命令向XS表添加一条新记录,记录内容为:

XH 10 该SQL命令应写成 (2) 。 下列命令正确的是 。

A、INSERT INTO XS VALUES(“10”,”李小平”,”男”,”984461”) B、INSERT TO XS VALUES(“10”,”李小平”,”男”,”984461”)

C、INSERT INTO XS(XH,XM,XB,BJ)VALUES(10,李小平,男,984461)

D、INSERT INTO XS(XH,XM,XB,BJ) VALUES(“10”,”李小平”,”男”,”984461”)

19. 学生表( xs.dbf )的表结构如下:

字段名 xh xm xb csrq 类型 字符 字符 字符 日期 长度 8 8 2 8 中文含义 学号 姓名 性别 出生年月 XM 李小平 XB 男 BJ 984461 如果用CREATE命令来创建该表,则该命令为:

CREATE TABLE xs ( xh C ( 8 ) , xm C ( 8 ) , xb C ( 2 ) , csrq D )

20.完善下列UPDATE-SQL命令。该命令的作用是修改js表(教师表)中jbgz(基本工资)字段的值。修改的要求如下:

工龄(gl)在10年以下(不含10年)的教师基本工资增加100元、工龄(gl)在20年以上(含20年)的教师基本工资增加500元、其他工龄的教师基本工资增加200元。

UPDATE js SET JBGZ=IIF(js.gl<10, Jbgz+100(3) ,; IIF( Js.gl>=20或gl>=20 或Js.gl>19或gl>19 , jbgz+500, jbgz+200))

3

21.若要求按如下条件更改教师情况表(JSQK.DBF,表结构如下表所示)中基本工资的值:“具有高级职称的教师的基本工资增加30%,其他教师的基本工资增加200元”,则可用如下命令来完成:(注:高级职称包括“教授”和“副教授”)

UPDATE JSQK SET JBGZ=IIF( “教授”$ZC 或者 ZC=”教授” OR ZC=”副教授” ,JBGZ*1.3,JBGZ+200) 字段名 GH XM XB JBGZ ZC 字段类型 C C C N C 字段宽度 6 8 2 6 8 小数位数 1 字段含义 学号 姓名 性别 基本工资 职称 22.彻底删除表中部分记录需要分两步来实现:首先是作 逻辑 删除,即用DELETE或DELETE-SQL命令给需要删除的记录加删除标记;然后用 Pack 命令彻底删除带删除标记的记录(作物理删除)。 23.若已经为在当前工作区中打开的表设置了主控索引,则将记录指针定位到物理顺序的第一条记录,所用的命令为GOTO 1;而将记录指针定位到逻辑顺序的首记录,所使用的命令为 Go top(2) 。 24.在打开学生表( xs.dbf )的同时,设置xh为主控索引,其命令是: USE xs ORDER xh

25. 已知学生表(XS.DBF)中已经创建按学号建立了一个普通索引,索引标识名为XH,下列程序的功能是显示出学生表中所有学号以04开头的学生学号、姓名和性别。 USE XS ORDER XH SEEK “04”

DO WHILE NOT EOF( ) AND XH=’04’ ? XS.XH, XS.XM, XS.XB SKIP ENDDO

26.已知成绩表(cj.dbf)中包含xh字段(学号、C型)、sxcj字段(数学成绩、N型)和jsjcj字段(计算机成绩、N型)。且已建立了1个按降序排序的结构复合索引,其索引名为cj1、索引表达式为sxcj+jsjcj。该表中含有如下所示的3条记录。

4