全国2004年10月高等教育自学考试
数据库及其应用试题
课程代码:02120
一、单项选择题(本大题共20小题,每小题2分,共40分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.数据管理技术发展所经历的过程是:( )
A.数据库—文件系统—自由管理
B.文件系统—自由管理—数据库
C.自由管理—文件系统—数据库
D.自由管理—数据库—文件系统
2.“外模式”又称( )
A.存储模式
B.系统程序员视图
C.物理级数据库
D.子模式
3.将C语言和DML结合起来,实现对数据库的操作,则将C语言称为( )
A.子语言 B.主语言
C.自主型语言 D.嵌入型语言
4.设关系R和S的构成如下:
R S
A |
B |
C |
a
d
b
c |
b
b
b
a |
c
c
f
d |
则R与S做自然连接得到的关系中的元组个数为( )
A.3 B.4 C.5 D.6
5.将2NF规范为3NF,应( )
A.消除非主属性对键的部分函数依赖
B.消除非主属性对键的传递函数依赖
C.消除主属性对键的部分函数依赖和传递函数依赖
D.消除非主属性对键的部分函数依赖和传递函数依赖
6.关系数据操纵语言DML是以关系为操作对象,操作后的结果是( )
A.元组 B.关系 C.属性 D.域
7.关系代数中,只有五种基本运算,它们是( )
A.∩∪-×π B.∪-×πσ
C.∩∪-×σ D.∩-×π
8.若a=-10,b=90,执行语句″?abs(a-b)″后的输出结果是( )
A.80 B.-80 C.100 D.-100
9.执行语句″?LEN(″北京 上海″)″后的输出结果是( )
A.6 B.8 C.10 D.14
10.执行语句″?TYPE(″2*3″)″后的输出结果是( )
A.6 B.N C.U D.D
11.在下列字符型常量的表示中,错误的是( )
A.″test″ B.′test′ C.{test} D.[test]
12.执行语句″?AT(″Foxpro″,″ Visuval Foxpro″)″后的输出结果是( )
A.0 B.8 C.9 D.10
13.下列日期型表达式中,正确的是( )
A.{″00/07/20″} B.{00/07/20}
C.{′00/07/20′} D.[00/07/20]
14.执行语句″?SUBSTR(″success″,2,4)″后的输出结果( )
A. ucc B. ucce C. cces D. cess
15.使用SQL语名″CREATE CURSOR〈库文件名〉(字段名1 类型,字段名2 类型)″创建的临时数据库文件的扩展名是( )
A.DBF B.TMP
C.FPT D.FKY
16.文件stud.dbf的字段有:xh(学号,字符型),bh(班号,数值型),xm(姓名,字符型),xb(性别,逻辑型,其中T代表男,F代表女),english(英语,数值型),要求统计90981班男生的英语平均成绩,则应使用命令
A.AVERAGE english TO cj FOR xb .AND. 班号=90981
B.AVERAGE english TO cj FOR xb=.T. .AND. 班号=90981
C.AVERAGE english TO &cj FOR xb .AND.班号=90981
D.AVERAGE english TO cj FOR.NOT. xb .AND. 班号=90981
17.下列关于数据库索引文件的操作中,错误的是( )
A.SET INDEX TO<索引文件名>
B.USE<库文件名>INDEX TO <索引文件名>
C.INDEX ON 班级 TO <索引文件名>
D.USE<库文件名>INDEX <索引文件名>
18.在FoxPro的运行环境下,建立命令文件 abc.prg,使用命令( )
A.MODIFY COMMAND abc
B.DO abc
C.CREATE abc
D.SAVE TO abc
19.设x=″abcd″,执行命令@10,10 SAY″x=″ GET x PICTURE″!!!!″后,输出结果是( )
A.x=Abcd B.x=abcd
C.x=″abcd″ D.x=ABCD
20.为解决循环次数不确定,循环步长无规律的问题,最适宜的循环结构是( )
A.DO WHILE B.FOR
C.SCAN D.A、B、C均可
二、填空题(本大题共10小题,每空1分,共10分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.关系规范化的实质是对关系 的过程。
22.写出1NF,2NF,3NF之间的包含关系: 。
23.关系可看成是规范化的二维表,要求表中的每个元组分量都必须是 。
24.关系模式的分解应保持关系的相互独立性和 。
25.数据模型是一种形式化描述记录类型及其 的方法。
26.由若干记录组成的集合称之为 。
27.信息世界的实体在数据世界中对应于 。
28.实体完整性是指关系中的 不允许取空值。
29.关系模式R(A,B,C,D)的函数依赖集为F={AC→B},则R的候选键为 。
30.数据库管理系统(DBMS)对数据库运行的控制主要是通过数据的安全性、完整性、故障恢
复和 方面实现的。
三、程序分析题(本大题共3小题,每小题5分,共15分)
31.现有两个数据库文件stud.dbf和classdept.dbf,其数据情况如下:
stud.dbf的内容如下:
学号 姓名 年龄 性别 班号 总平均分
99001 王晓明 23 男 90991 54.4
99002 张雨梅 22 女 90992 90.6
99003 何玉鑫 24 男 90993 68.0
99004 周雨心 22 女 90991 69.8
99005 商 海 25 男 90991 82.0
99006 刘达西 24 男 90192 91.4
99007 朱国海 23 男 90991 85.6
99008 周维维 23 女 90993 77.7
classdept.dbf的内容如下:
班号 系别 入学年月 类别
90991 1 07/30/99 本科
90992 1 07/30/99 本科
90993 2 07/30/99 本科
给出下述程序的输出结果。
SET TALK OFF
SELE CT a
USE stud
SEL ECT b
USE classdept
S ELECT a
DISPLAY FIELDS b→班号,学号,姓名,总平均分
S ELECT b
GOTO 3
bb=班号
S ELECT a
LOCATE FOR班号 = bb
DISPLAY FIELDS 班号 b→系别,学号,姓名,总平均分,b→入学年月,b→类别
CLOSE DATABASE
SET TALK ON
RETURN
输出结果:
32.文件supplier.dbf用于存放供应商信息,其字段有:sid(标识号,字符型),sname(姓名,字符型),addr(地址,字符型)。文件supply.dbf用于存放供应信息,其字段有sid(标识
号,字符型),cname(商品名,字符型),price(单价,数值型)。给出下述程序的输出结果。
supplier.dbf的内容如下 |
supply.dbf的内容如下 |
sid |
sname |
addr |
sid |
cname |
price |
n1 |
s1 |
a1 |
n1 |
i1 |
100 |
n2 |
s2 |
a2 |
n2 |
i2 |
50 |
n3 |
s3 |
a3 |
n3 |
i3 |
150 |
SET TALK OFF
CLEAR ALL
S ELECT B
USE supply
S ELECT A
USE supplier
JOIN WITH suppluy TO new FIELDS sname,supply→cname,supply→price;
FOR sid=supply→sid
USE new
SCAN
?sname +SPACE(2)+cname+SPACE(2)+STR(price,3)
ENDSCAN
CLEAR ALL
RETURN
输出结果:
33.文件course.dbf用于存放教师信息,其字段有:cname(课程名,字符型),chour(学时,数值型),credit(学分,数值型)。给出下述程序的输出结果。
course.dbf的内容如下:
cname chour credit
c1 36 2
c2 54 3
c3 72 4
c4 72 4
c5 54 3
c6 36 2
SET TALK OFF
CLEAR ALL
USE course
FOR i=1 TO RECCOUNT( )
IF i%2=1
LOOP
ENDIF
GOTO i
? cname+SPACE(2)+STR(chour,2)+SPACE(2)+STR(credit,1)
ENDFOR
USE
RETURN
输出结果:
四、程序设计题(本大题共5小题,每小题5分,共25分)
34.下述程序的功能是求2+4+6+…+2n,(n>0)的值。完成下述程序。
SET TALK OFF
n=o
@10,10 SAY″请输入n(n>o): ″GET n VALID
(1)
READ
s=0
FOR i=2 TO
(2) STEP 1
IF i%2=1 THEN
LOOP
ENDIF
(3)
ENDFOR
?″s的值=″,s
RETURN
(1)
(2)
(3)
35.文件dsd.dbf保存订书信息,其字段包括:书名(字符型),册数(数值型),单价(数值型),金额(数值型)。文件tjd.dbf保存调价信息,其字段有:书名(字符型),单价(数值型)。下列程序是按tjd.dbf中“线性代数”的单价调整dsd.dbf中“线性代数”的单价,并计算出相应的金额。完成下列程序。
SET TALK OFF
S ELECT 1
USE dsd
S ELECT 2
USE tjd
LOCATE FOR
(1)
S ELECT 1
LOCATE FOR 书名=B→书名
DO WHILE.NOT.EOF( )
REPLACE
(2)
CONTINUE
ENDDO
BROWSE
CLOSE DATABASE
SET TALK ON
RETURN
(1)
(2)
36.文件stud.dbf的字段包括:学号(字符型),姓名(字符型),出生日期(日期型)。文件cj.dbf的字段包括:学号(字符型),课程名(字符型),成绩(数值型)。要求查询学生“李芳”的成绩。完成下述程序。
SET TALK OFF
S ELECT 1
USE stud
INDEX ON 学号TO stud
S ELECT 2
USE cj
INDEX ON
(1) TO xh
SET RELATION TO
(2) INTO A
BROWSE FIELDS学号,A→姓名,课程名,成绩FOR
(3)
SET RELATION TO
CLOSE DATABASE
RETURN
(1)
(2)
(3)
37.已知学生数据库 stud.dbf的内容如下:
姓名 课程名 成绩
王芳 高数 83
肖明 线代 91
黄亮 英语 80
肖明 高数 90
肖明 英语 83
李洪 英语 78
要求删除“肖明”同学各门课程成绩,修改“李洪”英语成绩并显示。完成下述程序。
SET TALK OFF
USE stud
DELET E FROM stud WHERE
(1)
UPDA TE stud SET 成绩=85 WHERE 姓名=″李洪″.AND.课程名=″英语″
DISPLAY FOR
(2)
USE
SET TALK ON
RETURN
(1)
(2)
38.现有三个数据库,其结构与记录如下所示。
student.dbf的内容如下:
学号 姓名 系别
99061 王小平 机电系
99062 李涛 自动系
99063 张波 化工系
xk.dbf的内容如下:
学号 课程号 成绩
99061 C501 95
99061 C503 85
99061 C504 90
99062 C501 89
99062 C502 85
99063 C502 78
kc.dbf的内容如下:
课程号 课程名
C501 数据库
C502 数据结构
C503 普通物理
C504 高等数学
要求查询名为“李涛”的数据库课成绩。完成下述程序。
S ELECT 3
USE kc
S ELECT 2
USE xk ALIAS xkib
S ELECT 1
USE student
LOCATE FOR 姓名=″李涛″
xh=学号
S ELECT kc
LOCATE FOR
(1)
kch=课程号
S ELECT xkib
LOCATE FOR
(2)
DISPLAY FIELDS课程号,C→课程名,学号,A→姓名,成绩
SET TALK ON
RETURN
(1)
(2)
五、综合题(本大题共2小题,每小题5分,共10分)
39.设文件dbffile.dbf存在。说明函数funl、fun2及fun3的功能。
SET TALK OFF
SET PROCEDURE TO ulty
USE dbffile
COPY TO new
USE new
FOR i=1 TO RECCOUNT(″new″).
? funl(i), fun2(i),fun3(i)
ENDFOR
USE
SET PROCEDURE TO
RETURN
文件ulty.prg的内容如下:
FUNCTION fun1
PARAMETER i
PRIVATE mname
GOTO i IN new
mname=TRIM(new→姓名)
RETURN mname
FUNCTION fun2
PARAMETER i
PRIVATE mtype
GOTO i IN new
mtype=new→性别
RETURN mtype
FUNCTION fun3
PARAMETER i
PAIVATE mlen
GOTO i IN new
mlen=new→年龄
RETURN mlen
(1)函数fun1的功能:
(2)函数fun2的功能:
(3)函数fun3的功能:
40.已知关系框架R(SNO,TNO,JNO),其中SNO为学生学号,TNO为教师职工号,JNO为课程号,一个教师只教一门课,一个学生一旦选择了某门课就固定地选定了某个教师。请写出R上成立的所有函数依赖及候选键,并说明R最高是几级范式。
试题word文档下载: