1、数据库试题及标准答案很好的程序设计笔试样卷一参考答案一、简答题(25分)2 设有三个关系S (SNO, SNAME, AGE, SEX, SDEPT)SC (SNO, CNO, GRANDE)C (CNO, CNAME, CDEPT, TNAME)试用关系代数表达式表示下列查询(1)检索LIU老师所授课程的课程号、课程名(2)检索年龄大于23岁的男学生的学号和姓名(3)检索学号为S3的学生所学课程的课程名和认课教师姓名(4)检索WANG同学不学的课程的课程号(5)检索至少选修了两门课程的学生的学号(10分)三、设有三个基本表(45分)S (SNO, SNAME, AGE, SEX, SDEPT
2、)SC (SNO, CNO, GRANDE)C (CNO, CNAME, CDEPT, TNAME)1 试用T-SQL的查询语句表达下列查询(1)检索LIU老师所授课程的课程号、课程名(2)检索年龄大于23岁的男学生的学号和姓名(3)检索学号为S3的学生所学课程的课程名和认课教师姓名(4)检索WANG同学不学的课程的课程号(5)检索至少选修了两门课程的学生的学号(10分)(1)SELECT CNO,CNAME FROM C WHERE TNAME= LIU(2)SELECT SNO,SNAME FROM S WHERE AGE23 AND sex= 男(3)SELECT C.CNO, TNAM
3、EFROM S,SC,CWHERE SNO=S3 AND C.CNO=SC.CNO=c03 AND S.SNO=SC.SNO(4)select cno from cwhere not exists (select cno from sc where o=o and sname=WANG)(5) select sc1.sno from sc as sc1,sc as sc2where sc1.sno=sc2.sno and oo2 试用T-SQL的查询语句表达下列查询(1)统计有学生选修的课程的门数(2)求选修C4课程的学生的年龄(3)求LIU老师所授课程的每门课程的学生的平均成绩(4)统计每门
4、课程的学生选修人数(5)求年龄大于所有女同学年龄的男学生的姓名和年龄(10分)(1)select ,count(*) as num from sc group by cno(2)SELECT SNO,AGE FROM S,SC WHERE S.SNO=SC.SNO AND CNO=C4(3)select cno, avg(score)from c,sc WHERE TNAME= LIU AND C.CNO=SC.CNO group by cno (4)select cno,count(*)from sc(5)select sname,age from s where SEX=男 and age
5、all(select age from s where sex=女)3 试用T-SQL更新语句完成下列更新操作(1)往表S中插入一个学生资料( S9, WU, 18)(2)在表S中检索每一门课程成绩都大于等于80分的学生的学号、姓名、性别,把检索结果插入另一个已存在的表STU ( SNO, SNAME, SEX)(3)删除SC表中WANG同学的选课资料(4)把低于总平均分的女同学的成绩提高5(5)把表SC中C4课程的成绩提高5(10分)四、设有关系模式R(ABCD),R上的FD集F= ABCD, AD,试说明R不是2NF的理由,并把R分解成2NF模式集。(10分)数据库应用笔试样卷一参考答案
6、三、(45分)1. 2.3.(1)INSERT INTO S(sno, sname, age) VALUE( S9, WU, 18)(2)select sno,sname,.seg into stu from s where score=80 and s.sno=sc.sno(3)delete from sc where sc.sno=(select sno from s where sname=wang and s.sno=sc.sno)(4)update sc set score=score*(1+0.05) from s,sc where sex= 女 and s.sno=sc.sno
7、and score(select avg(score) from sc ) (5)update sc set score=score*(1+0.05) from where cno=c4 四、(10分)设有关系模式R(ABCD),R上的FD集F= ABCD, AD,试说明R不是2NF的理由,并把R分解成2NF模式集。(10分)1、侯选键为AB2、由ABCD 可知ABC,ABD又由于AD 故D局部依赖于侯选键AB 所以R不是2NF3、R1(AB,C)R2(A,D)笔试样卷二参考答案一、 选择题(10X220分)1 数据完整性不包括a)主体完整性 b)实体完整性 c)参照完整性 d)自定义完整性2
8、 常用的三种结构数据模型不包括a)关系模型 b)实体联系模型 c)层次模型 d)网状模型3 关系的集合运算不包括a)交 b)并 c)和 d)差4 关系的专门关系运算不包括a)选择 b)投影 c)连接 d)积5 事务的属性包括a)原子性、安全性、隔离性、持久性 b)原子性、一致性、安全性、持久性c)原子性、一致性、隔离性、安全性 d)原子性、一致性、隔离性、持久性6 SQL Server系统数据库不包括a)master b)tempdb c)student d)model7 SQL Server中,数据库主数据文件扩展名为a) ldf b) mdf c) ndf d) dbf8 SQL Serv
9、er中,索引类型包括a)聚集索引和非聚集索引 b)主索引和次索引c)单索引和复合索引 d)内索引和外索引9 SQL的数据操纵命令是a)select、insert、delete、update b)create、select、insert、deletec)create、insert、delete、update d)select、insert、delete、alter10SQL Server系统的触发器包括a)select、insert、delete b)insert、delete、updatec)select、insert、update d)select、delete、update二、 填空题(1
10、0X220分)1 数据管理经历了 、 、 三个阶段。2 DB的中文含义是 、DBMS的中文含义是 、DBS的中文含义是 、DBA的中文含义是 。3 数据库的三级体系结构为 、 、 ,两级映象为 、 ,两级数据独立性为 、 。4 SQL主要由 、 、 三类语句组成。5 数据库设计通常由规划、需求分析、 、 、 、数据库实现、数据库运行与维护7个阶段构成。三、 应用题(3X515分)设关系模式R,其中U=A,B,C,D,F=ABC,CA,CD,DB,试问:1 关系R各属性的闭包。2 关系R的所有候选码。3 判断关系R是否属于3NF,并解释你的结论。四、 综合题(45分)某学校要对学生成绩进行计算机
11、管理。该学校有若干学生,每个学生有学号、班级、姓名、性别、出生日期、地址。开设的课程需要管理课程编号、课程名称、学分和学生选修该课程后的成绩等信息。该学校规定:一个学生可以有选修多门课程,一门课程可以有多名学生选修。1 画出此管理系统的ER模型。2 简述ER模型向关系模式转换的一般方法。3 将以上ER模型转化为关系模式,包括主键、外键。4 试用SQL语句表示以下数据编辑: 将新生“张三”插入学生表(其它属性自设)。 删除选课表中学号为“0001”的学生的选课信息。 将所有选修了课程编号为“c001”的学生成绩加5分。 将所有选修了“数据库”课程的学生成绩提高5分。 把低于总平均分的女同学的成绩
12、提高5。5 试用代数表达式表示以下查询: 查询全校所有学生的学生表的所有信息。 查询全校所有地址为“西安”的学生的学号、姓名、性别。 查询所有选修了“数据库”课程的学生的学号、姓名、成绩。 查询选修了所有课程的学生的学号、姓名、性别。 查询选修了2门课程以上的学生的学号、姓名、性别。 查询学号为“0001”的学生没有选修的课程编号、课程名称。6 试用SQL语句表示以下查询: 查询全校所有学生的学生表的所有信息。 查询全校所有地址为“西安”的学生的学号、姓名、性别。 查询所有选修了“数据库”课程的学生的学号、姓名、成绩。 查询每个学生所选课程的数量、总分、最高、最低分 查询选修了所有课程的学生的
13、学号、姓名、性别。 查询选修了2门课程以上的学生的学号、姓名、性别。数据库应用笔试样卷二参考答案一、选择题(10X220分) 1. a) 2. b) 3. c) 4. d) 5. d) 6. c) 7. b) 8. a) 9. a) 10. b) 二、填空题(10X220分) 11. 人工管理阶段、文件系统阶段、数据库阶段三个阶段。 12. 数据库、数据库管理系统、数据库系统、数据库管理员。 13. 数据库的三级体系结构为外模式、概念模式、内模式,两级映象为外模式/模式映象、模式/内模式映象,两级数据独立性为物理数据独立性、逻辑数据独立性。 14. SQL主要由 数据定义、数据操纵、数据控制三
14、类语句组成。 15. 数据库设计通常由规划、需求分析、概念设计、逻辑设计、物理设计、数据库实现、数据库运行与维护7个阶段构成。 三、应用题(3X515分) 16. A+=A ,B+=B ,C+=ABCD,D+=DB,(AB)+= ABCD 17. 关系R的所有候选码。AB及C 18. 关系R不属于3NF。因为非候选码传递依赖于侯选键AB 四、 综合题(45分) 某学校要对学生成绩进行计算机管理。该学校有若干学生,每个学生有学号、班级、姓名、性别、出生日期、地址。开设的课程需要管理课程编号、课程名称、学分和学生选修该课程后的成绩等信息。该学校规定:一个学生可以有选修多门课程,一门课程可以有多名学
15、生选修。1. ER模型。 2. ER模型向关系模式转换的一般方法。 实体:实体类型关系模式。联系:11:将联系置入任一端实体,并加入另一端实体主键为外键。1N:将联系置入多端实体,并加入一端实体主键为外键。MN:建立新关系模式,主键为两端实体的主键,并为外键。3.关系模式 s(sno,class,sname,sex,birthday,addr)c(sno,cname,credit)sc(sno, cno,score)4. 试用SQL语句表示以下数据编辑:1. INSERT INTO S(sno, class, sname, sex) VALUE ( 0025, 982, 张三, 男) 2. D
16、ELETE FROM SC WHERE SNO=0001AND S.SNO=SCSNO 3. update sc set score=score+5 from where cno=c001 4. update sc set score=score*(1+0.05) from c,scwhere sname= 数据库 and o=o 5. update sc set score=score*(1+0.05) from s,sc where sex= 女 and s.sno=sc.sno and score(select avg(score) from sc )5.试用代数表达式表示以下查询: 1
17、. select * from s 2. select sno,sname,sex from s where address like %西安% 3. select sc.sno,sname, score from s,c,sc where sc.sno=s.sno and o=o and cname=数据库 4. select sno,sname,sex from s where not exists(select * from c where not exists(select * from sc where sc.sno=s.sno and o=o) 5. select sc1.sno
18、from sc as sc1,sc as sc2 where sc1.sno=sc2.sno and oo 6. select cno,cname from c where not exists(select cno from sc,s where s.sno=sc.sno and o=o and sno=0001)。6.试用SQL语句表示以下查询: 1. select * from s 2. select sno,sname,sex from s where address like %西安% 3. select sc.sno,sname, score from s,c,scwhere sc
19、.sno=s.sno and o=o and cname=数据库 4. select sno,count(*) as num,sum(score), max(score), min(score)from sc group by sno 5. select sno,sname,sex from s where not exists (select * from c where not exists(select * from sc where sc.sno=s.sno and o=o) 6. select sc1.sno from sc as sc1,sc as sc2where sc1.sno
20、=sc2.sno and oo 笔试样卷三参考答案一、 填空题(30分)1 数据完整性包括 、 、 。2 SQL Server系统数据库包括 、 、 、 。3 SQL Server中,数据库主数据文件扩展名为 ,次数据文件扩展名为 ,事务日志文件扩展名为 。4 SQL Server数据定义语句包括 、 、 。5 ER模型的中文名称为 。6 经典的结构数据模型包括 、 、 。7 专门的关系运算包括 、 、 、 。8 SQL Server数据操纵命令包括 、 、 、 。9 使用存储过程的目的是 。10 数据库索引包括 、 。11 数据库系统3级结构包括 、 。二、 设有学生成绩库,包含三张表:学生
21、(学号,班级,姓名,性别,出生日期,地址,电话,信箱)课程(课程编号,课程名称,学分)选课(学号,课程编号,成绩)用SQL语句完成以下操作(50分)。1、 删除所有成绩为NULL的学生选课信息。2、 将所有不及格课程的成绩加5分。3、 将所有“数据库应用”课程的成绩加5分。4、 查询所有课程的所有信息。5、 查询所有学生的姓名、性别。6、 查询所有男生的姓名、年龄。7、 查询所有学生的平均成绩,并按平均成绩排名次。8、 查询所有选修了“数据库应用”课程的学生的学号、姓名和该课成绩。9、 查询张三同学没有选修的课程编号、课程名称。10、 查询所有学生都选修的课程编号、课程名称。三、 关系模式R(
22、ABCD),F=ABC,CA,CD,DB (20分)1、 关系R的所有候选码是什么?2、 R是否属于3NF,解释你的结论。数据库应用笔试样卷三参考答案 一、填空题(30分) 1. 数据完整性包括 实体完整性、 参照完整性、用户定义完整性。 2. SQL Server系统数据库包括 master、model、msdb、tempdb。 3. SQL Server中,数据库主数据文件扩展名为mdf,次数据文件扩展名为 ndf ,事务日志文件扩展名为ldf。 4. SQL Server数据定义语句包括 create 、drop 、 alter 。 5. ER模型的中文名称为实体联系模型。 6. 经典的
23、结构数据模型包括 层次、 网状、 结构 。 7. 专门的关系运算包括 选择 、 投影 、 连接 、 除 。 8. SQL Server数据操纵命令包括 insert 、 delete、 update、 select 。 9. 使用存储过程的目的是 减轻网络流量、提高效率。 10. 数据库索引包括聚集、非聚集。 11. 数据库系统3级结构包括外部级、 概念级和内部级。 二、设有学生成绩库,包含三张表: 学生(学号,班级,姓名,性别,出生日期,地址,电话,信箱)课程(课程编号,课程名称,学分)选课(学号,课程编号,成绩)用SQL语句完成以下操作(50分)。1. delete from sc whe
24、re score is null 2. update sc set score=score+5 from where score60 3. update sc set score=score+5 from c,scwhere sname= 数据库 and o=o 4. select * from c 5. select sname.sex from s 6. select sname. year(getdate()-year(birthday) as age from s where sex= 男 7. select sno,avg(score) from sc group by sno or
25、der by 2 desc 8. select sc.sno,sname,cname,score from s,c,scwhere sc.sno=s.sno and o=o and cname=数据库 9. select cno,cname from c where not exists(select cno from sc,s where o=o and c.sno=s.sno and sname=张三) 10. select cno,cname from c where not exists(select * from s where not exists(select * from sc
26、 where sc.sno=s.sno and o=o)三、关系模式R(ABCD),F=ABC,CA,CD,DB (20分) 1. 关系R的所有候选码。AB及C 2. 关系R不属于3NF。因为非候选码传递依赖于侯选键AB 数据库试题及答案 两套 收藏 数据库原理试题(A卷)一、 填空题(每空 1 分,共 20 分) 1. 对于一个国家来说,数据库的建设规模、数据库信息量的 _ 和 _ 已成为这个国家信息化程度的 _ 。2. 数据模型通常由: _ 、 _ 和 _ 三部分组成。 3. 游标的功能是把 _ 转换为 _ 。 4. 最常用的数据库的恢复技术是_ 和 _。 5. _ 模型是现实世界到 _ 机器模型的中间桥梁。6. 数据独立性是指_ 和_ 独立性。 7. 数据库应用程序开发工具目前有 _ 、 _ 、 _ 、和 _ 等。 8. 目前数据库产品有 SQL Server 和 _ 、 _ 等。 二、 选择题(每小题 1 分,共 10 分) 1. 关于冗余数据的叙述中,不正确的是 ( ) 。 A 冗余的存在容易破坏数据库的完整性 B 冗余的存在给