一九九九年下半年全国高等教育自学考试
数据库及其应用试卷
一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其代号写在题干后的括号内。答案选错或未选者,该题不得分。 每小题1分,共15分)
1.逻辑数据独立性是指( )
A. 模式变,用户不变
B. 模式变,应用程序不变
C. 应用程序变,模式不变
D. 子模式变,应用程序不变
2.DBS中,内外存数据交换最终是通过( )
A. UWA完成
B. DBMS完成
C. OS完成
D. 键盘完成
3.用散列文件组织数据时,后到的发生碰撞的记录存放到( )
A. 基本区
B. 缓冲区
C. 溢出区
D. 用户工作区
4.进行自然联接运算的两个关系必须具有( )
A. 相同属性个数
B. 公共属性
C. 相同关系名
D. 相同关键字
5.一个外部关键字的属性个数( )
A. 至多一个
B. 至多2个
C. 至少一个
D. 至少2个
6.任何由二个属性组成的关系( )
A. 可能为1NF
B. 可能为2NF
C. 可能为3NF
D. 必为3NF
7.DB、DBMS和DBS三者间的关系是( )
A. DB包括DBMS和DBS
B. DBS包括DB和DBMS
C. DBMS包括DBS和DB
D. DBS与DB和DBMS无关
8.某个DBF文件的一个数值字段要求2位整数,1位小数,则其宽度应为( )
A. 4
B. 3
C. 5
D. 2
9.下列字符串可作为内存变量使用的是( )
A. 4321
B. 房租+水电
C. 姓名
D. 男/女
10.下列表达式中,运算结果为字符串的是( )
A.'ABCD'-'AB'
B.'ABCD'+'XYZ'='ABCDXYZ'
C.CTOD('06/29/99')
D.AB-25
11.一个DBF文件含数学、英语、总分三个N型字段,要将每个学生的数学和英语成绩汇总后存入到相应的总分字段中,应使用命令( )
A. STORE 数学+英语 TO 总分
B. REPL 数学+英语 TO 总分
C. REPL ALL 总分 WITH 数学+英语
D. REPL ALL 总分 WITH 数学,英语
12.不需要对文件排序或建索引就可使用的命令是( )
A. TOTAL
B. FIND
C. SEEK
D. SUM
13.执行FNAME='F1'和USE &FNAME两个命令后,打开的文件是( )
A. FNAME.DBF
B. &FNAME.DBF
C. F1.DBF
D. F1.MEM
14.若某一个DBF文件有三个备注字段,则该文件对应的备注文件有( )
A. 3个
B. 1个
C. 4个
D. 0个
15.FOXBASE+中,设置当前工作区的命令为( )
A. USE
B. GO
C. RETURN
D. SELECT
二、多项选择题(在下列各题的四个备选答案中选出二至四个正确的答案,并将其代号写在题干后面的括号内,答案选错或未选全者,该题 不得分。每小题2分,共10分)
1.任给关系R(U),X、Y是U的子集,若X—/→Y,则X、Y间的联系方式为( )
A. 1:1
B. 1:m
C. m:1
D. m:n
2.数据冗余引起的问题有( )
A. 修改麻烦
B. 花费空间
C. 潜在数据不一致
D. 插入异常
3.关系代数运算中,运算对象为两个关系的运算有( )
A. 并
B. 交
C. 投影
D. 选择
4.同一个数组中的所有数组元素的数据类型( )
A. 必须相同
B. 必须不同
C. 可不同
D. 可相同
5.在网络环境下进行FOXBASE+应用编程时,为提高并发性而应该( )
A. 尽量使用记录锁
B. 尽量使用文件锁
C. 尽量以独占方式打开文件
D. 尽量以共享方式打开文件
三、程序分析题(每小题6分,共36分)
1.试述如下程序的功能。
(1) S=0
K=1
DO WHILE K<101
S=S+K
K=K+1
ENDDO
(2) USE GZ
DO WHILE .NOT.EOF()
IF .NOT.(SUBSTR(姓名,1,2)='王')
SKIP
LOOP
ELSE
DISP
SKIP
ENDIF
ENDDO
(3) SELECT 1
USE 读者
SELECT 2
USE 借阅
JOIN WITH A TO F FOR 借书号=A→借书号
USE F
LIST
RETURN
2.阅读如下程序,并写出程序运行的结果。
(1) SET TALK OFF
CLEAR
STORE 0 TO M,N
DO WHILE .T.
M=M+1
DO CASE
CASE INT(M/2)=M/2
LOOP
CASE M>=10
EXIT
OTHERWIZE
N=N+M
ENDCASE
ENDDO
?“M=”,M
?“N=”,N
RETURN
(2) SET TALK OFF
CLEAR
STORE 1 TO S,K
DO WHILE K<=6
S=S*K
K=K+1
ENDDO
?“S=”+STR(S,4)
RETURN
(3) SET TALK OFF
CLEAR
X=“ABCDEFGHIJK”
Y=“ ”
I=11
DO WHILE I>1
Y=Y+SUBSTR(X,I,1)
I=I-1
ENDDO
?“Y=”+Y
RETURN
四、程序设计题(每小题8分,共24分)
1.已知数据库文件stu.dbf中含有学号、姓名等字段。下面的程序是根据键盘输入学生姓名进行查询的程序,试在程序中的划线处,填入
合适的语句,使之成为完整正确的程序。
SET TALK OFF
CLEAR
STORE “” TO PT1,PT2
NAME=SPACE(8)
USE STU
DO WHILE .T.
ACCEPT “请输入姓名:” TO NAME
_________________(1)
IF FOUND()
DO WHILE .NOT.EOF()
DISP
WAIT “是找此人吗?(Y/N)” TO PT1
IF UPPER(PT1)=“Y”
____________(2)
ELSE
_____________(3)
ENDIF
ENDO
ELSE
?“查无此人!”
ENDIF
WAIT “继续查询吗(Y/N)?” TO PT2
IF UPPER (PT2)=“N”
_____________(4)
ENDIF
ENDDO
RETURN
2.用循环语句编写程序,在屏幕上显示如下图形:
*******
*****
***
*
3.设菜单格式如下:
功能选择
1.录入 2.修改
3.查询 4.统计
5.打印 6.退出
其中前五项功能的程序名分别为LR.PRG,XG.PRG,CX.PRG,TJ.PRG,DY.PRG。试编写一个包括功能菜单、选择功能号和调用相应程序的主控程序。
五、综合应用题(每小题5分,共15分)
设要建立一个企业数据库,该企业各部门有许多职员,但一个职员仅属于一个部门;每个职员可在多项工程中做工或负责管理,每项工程可有多个职员做工,但只有一个负责管理者;有若干供应商同时为各不同工程供应各种零件,一个零件又可由其它若干零件组装而成,或用来组成其它多种零件。
请完成如下设计或处理:
1.设计该DB的E-R图,自行适当给出各实体的属性;
2.将该E-R图转换为等价的关系模型方式;
3.简述你在2)中采用具体转换方法。