《数据库原理及应用》试卷(A卷)
考试方法 闭卷 共8页
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 一. 判断题(1分/题,共10分,对画√,错画×) 1.建立自由表分两步:定义表结构和输入数据。
2.表间的关系分三种:一对一关系、一对多关系和多对多关系。 3.在应用程序中可以通过使用该工作区的表的别名来标识工作区。 4.一条命令可分几行写,在行结束处用“:”表示一行未完,转入下一行。
5.VFP主要数据容器有:表记录、变量和数组。
6. VFP中的NULL 表示未知数据,便于与含有NULL值的SQL数据库一起工作。 7. 索引是改变表的物理顺序,排序是排列表的逻辑顺序。
8. DISPLAY在VFP中与DISPLY命令等效。 9. VFP中的变量分内存变量和字段变量。
10. VFP刚开始工作时,系统默认选择为第一号工作区。 二、选择题(每个选择2分,共30分) 1.函数LEN(SPACE(5)-SPACE(1))的返回值是(
(A) 错误信息 (B) 17 (C) 6 (D) 4
2.某表文件中有日期型字段”出生日期”,设N=’01/01/80’,下列命令正确的是( )
(A) LOCATE FOR 出生日期=’01/01/80’ (B) LOCATE FOR 出生日期=&N (C) LOCATE FOR DTOC(出生日期)=N (D) LOCATE FOR DTOC(出生日期)=CTOD(N) 3.下列概念中,正确的是( )
A.在一个工作区中只能打开一个表文件,打开新的表文件后,原来所打开的表文件就自动关闭
B.一个表文件可以在不同的工作区同时打开 C.一个工作区中可以同时打开多个表文件
D. 一个表文件可以在不同的工作区同时打开,且一个工作区中可以同时打开多个表 4.将今年国庆节的日期送入内存变量ND的方法是( ).
)
《Visual FoxPro》试卷
A.ND=DTOC(“10/01/01”) B.ND=CTOD(“10/01/01”) C.STORE DATE()TO ND D.STORE 10/01/01 TO ND
5.表文件DD.DBF有100条记录,当前记录号是10,执行DISPLAY ALL命令后,记录指针向的记录号是( ).
A.100 B.10 C.1 D.101 6.统计女生人数并将结果存放于变量X中的命令是( (A) COUNT FOR .NOT. 性别=”男” TO X (B) COUNT FOR ( 性别=”女”)=.T. TO X (C) SUM FOR ( 性别<>”男”)=.T. TO X (D) SUM FOR 性别=”女” TO X
7. 在已打开的表中,要永久删除当前记录位置开始的10条记录,可用( )
(A) 先执行DELETE NEXT 10命令,后用PACK命令 (B) 先执行DELETE RECORD 10命令,后用PACK命令 (C)先执行DELETE FOR RECORD> 10命令,后用PACK命令 (D)ZAP NEXT 10
8.按数值型字段”总分”进行索引,使其按降序排列的命令是(
(A) INDEX ON -总分 TO WP (B) INDEX ON 总分/A TO WP
(C) INDEX ON 总分 TO WP (D)INDEX ON 总分/D TO WP 9.下列操作后,不改变表记录指针的命令是(
(A) RECALL (B) LIST (C) SUM (D) REPL ALL
10.按照数据库的数据模型分类,VFP属于(
(A) 层次型 (B) 关系型 (C) 网状型 (D) 混合型
11.执行命令ACCEPT“请输入出生日期:”TO MDATE时,如果通过键盘输入
2
)
)
)
)
《Visual FoxPro》试卷
CTOD(“01/01/69”),则MDATE的值应当是( ). A.CTOD(“01/01/69”) B.“01/01/69”
C.01/01/69 D.拒绝接受,MDATE不赋值 12.在表结构中,逻辑型、日期型、备注型字段的宽度分别固定为( )。 A)3,8,4 B)1,6,4 C)1,8,任意 D)1,8,4
13.表与相应索引文件已经打开,内存变量XM=“李春”,执行时会产生逻辑错误的命令是( )。
A)LOCATE FOR 姓名=XM B)FIND &XM
C)SE EK XM D)LOCATE FOR 姓名=&XM 14.以下命令中正确的是( )。
A)STORE 8 TO X,Y B)STORE 8,9 TO X,Y
C)X=8,Y=9 D)X=Y=8
15.在非嵌套程序结构中,可以使用LOOP和EXIT语句的基本程序结构是( )。 A)TEXT——ENDTEXT B)DO WHILE——ENDDO
C)IF——ENDIF D)DO CASE——ENDCASE 三.读程序(每个选择4分,共24分)
1. 设表STU.DBF中有“学号、姓名、性别、出生日期、班级”等字段,有程序如下:SET TALK OFF USE STU
STORE SPACE (6) TO XM INDEX ON 学号TO XH DO WHILE .T .
ACCEPT “输入姓名:” TO XM LOCATE FOR 姓名=XM IF . NOT . EOF( ) DISPLAY ELSE
?’查无此人’ ENDIF
WAIT “继续吗?” TO YN
IF UPPER(YN)=’N’
3
《Visual FoxPro》试卷
(1)程序中“locate for 姓名=xm”如该用find命令,应为( )。 (A)find xm (B)find &xm (B)find 姓名=xm (D)无法使用find命令 (2)在什么情况下结束程序运行( )。 (A)输入姓名后 (B)显示完一条记录后
(C)给变量yn赋以’n’或’N’ (D)给变量yn赋以’y’或’Y’ 2. 假如有如下两个表: XS.DBF 学号(C,4) 姓名(C,8) 9901 张三 9902 王红 9903 李霞 9904 李四 9905 张莉 CJ.DBF 学号(C,4) 语文(N,6,2) 9903 90 9902 70 9901 88 9905 45 9904 97
EXIT ELSE
LOOP ENDIF ENDDO USE
SET TALK OFF
性别(L,1) .T. .F. .F. .T. .F. 出生日期(D,8) 02/12/79 02/11/80 07/23/78 04/01/82 09/22/83
数学(N,6,2) 78 80 55 81 92
SET TALK OFF SET SAFE OFF CLEAR ALL CLEAR SELE 1
4
《Visual FoxPro》试卷
USE CJ ALIAS P INDEX ON 学号 TO ICJ SELE 2 USE XS SET RELA TO 学号 INTO A &&① LOCATE FOR YEAR(DATE())-YEAR(出生日期)>=20 DO WHILE .NOT. EOF() ?学号,IIF(性别,’男’,’女’),A->数学 CONTINUE ENDDO WAIT SET TALK ON SET SAFE ON CLOSE ALL RETURN
(3)程序中①处的命令可用下面哪一条命令代替( )
(A) SET RELATION TO 学号 INTO XS (B) SET RELATION TO 学号 INTO P (C) SET RELATION TO 学号 INTO 1 (D) (B)和(C)均可
(4)程序执行到②处显示结果为( ) (A)9901 男 55
9902 女 80 9903 女 78 (B)9901 .T. 55
9903 .F. 78 (C)9902 女 80
9904 男 92 9905 女 81 (D)9902 .F. 80
9904 .T. 92 9905 .F. 81
3. 表与第2题相同。
5
&&②