全国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
SELECT a
USE stud
SELECT b
USE classdept
SELECT a
DISPLAY FIELDS b→班号,学号,姓名,总平均分
SELECT b
GOTO 3
bb=班号
SELECT 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
SELECT B
USE supply
SELECT 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
SELECT 1
USE dsd
SELECT 2
USE tjd
LOCATE FOR
(1)
SELECT 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
SELECT 1
USE stud
INDEX ON 学号TO stud
SELECT 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
DELETE FROM stud WHERE
(1)
UPDATE 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 高等数学
要求查询名为“李涛”的数据库课成绩。完成下述程序。
SELECT 3
USE kc
SELECT 2
USE xk ALIAS xkib
SELECT 1
USE student
LOCATE FOR 姓名=″李涛″
xh=学号
SELECT kc
LOCATE FOR
(1)
kch=课程号
SELECT 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文档下载: