中南大学数据库复习总纲及相关试题 下载本文

机会总是留给有准备的人。

3. 建立上述教师工资表teacher的按编号的索引,索引名称为teach

Create index teach on teacher(bh); 唯一索引 unique index ,聚族索引 clustered index

4. 建立上述教师工资表teacher的视图,视图包括姓名、基本工资、实发工资,名称为BMV,条件

是部门是“经管系”。 Cteate view BMV as Select XM,JBGZ,SFGZ From teacher Where bm=’经管系’;

5. 删除基本表教师工资表teacher。

Drop table teacher;

七、综合题(本题15分)

针对第五题所用的三张表,用SQL语言进行下列各项操作: 设有关系模式为:

学生(学号,姓名,性别,年龄,所在系) 课程(课程号,课程名,先行课) 选课(学号,课程号,成绩)

1. 查询年龄在18到22之间的学生的姓名,年龄,所在系;(2分)

Select 姓名,年龄,所在系 From 学生

Where 年龄 between 18 and 22; 2. 查询所有姓“李”的学生的成绩;(2分)

Selecct 成绩 From 选课

Where 学号 IN( Select 学号 From 学生 Where 姓名 like ‘李%’

);

3. 查询选修了5门以上课程的学生学号;(2分)

Select 学号 From 选课 Group by 学号 Having count(*)>=5

4. 查询选修了“数据库原理”这门课的学生的姓名;(2分)

Selecct 姓名 From 学生

Where 学号 IN( Select 学号 From选课 Where 课程号 IN(

第 5 页 共 29 页

机会总是留给有准备的人。

Select课程号 From 课程 Where 课程名=’数据库原理’ ) );

5. 查询其他系中比“经管系“所有学生年龄都大的学生名单(2分)

Select From学生

Where 年龄>=(select max(年龄) from 学生 where 所在系=’经管系’); 6. 查询选修了全部课程的学生学号和姓名。(2分)

Selecct 学号,姓名 From 学生

Where not exists( Select * From 选课 Where 课程号 not exists( Select * From 课程 Where 学生.学号=选课.学号 and 选课.课程号=课程.课程号

) );

参考:

思路:学号未知,科目未知,说明有两个未知变量。应该有两个EXISTS。我们可以扫描 student 和 course共有 s * c 中组合,将这些组合与SC的每一项进行匹配,注意s*c组合已经包含所

有可能。如果全部找到 ,就说明已经选修了全部课程。找不到就说明有课程没选修 。再将没选修的的

提交给上一exists 循环 。若上一exists 不存在的再提交给外循环。 select Sname from student where NOT exists // (select * from course

where NOT exists //不存在的提交给course (select * from SC where

Sno = student.sno and cno = Course.Cno)) // 代入两个未知变量

7. 插入一条记录(99001,张强,男,22,经管系)到学生表中;(1分)

Insert into 学生 values(99001,’张强’,’男’,22,’经管系’); 8. 将学生“95001”的学号改成“99089”。(2分)

Update 学生 set 学号=99089 where 学号=95001;

第 6 页 共 29 页

机会总是留给有准备的人。

数据库试卷(2)

一、 单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的

字母填在题后的括号内。每小题1分,共15分) 1.下列说法中不正确的是( )。

A、任何一个包含两个属性的关系模式一定满足3NF B、任何一个包含两个属性的关系模式一定满足BCNF C、任何一个包含三个属性的关系模式一定满足3NF D、任何一个关系模式都一定有码

2.关系模型中,表示实体间n:m联系是通过增加一个( ) A、关系实现 B、属性实现

C、关系或一个属性实现 D、关系和一个属性实现 3 .3NF同时又是( )

A、2NF B、1NF C、BCNF D、1NF,2NF 4.三级模式间存在两种映射,它们是( )

A、模式与外模式间,模式与内模式间 B、子模式与内模式间,外模式与内模式间 C、子模式与外模式间,模式与内模式间D、模式与内模式间,模式与模式间 5.从关系中挑选出指定的属性组成新关系的运算称为( ) 对比第10题 A、\选取\运算 B、\投影\运算 C、\联接\运算 D、\交\运算 6.SQL Server是一个基于( )

A、层次模型的DBMS B、网状模型的DBMS C、关系模型的应用程序 D、关系模型的DBMS

7. 在数据库设计中,将ER图转换成关系数据模型的过程属于( ) A. 需求分析阶段 B. 逻辑设计阶段 C. 概念设计阶段 D. 物理设计阶段 8. SQL中,下列涉及空值的操作,不正确的是( )

A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 9. 如果事务T获得了数据项Q上的排它锁,则T对Q ( ) A. 只能读不能写 B. 只能写不能读 C. 既可读又可写 D. 不能读不能写

10.从关系中挑选出指定的元组组成新关系的运算称为( )对比第5题 A、\选取\运算 B、\投影\运算 C、\联接\运算 D、\交\运算

11.下列数据模型中,数据独立性最高的是( ) A、网状数据模型 B、关系数据模型 C、层次数据模型 D、非关系模型

12.为提高效率,关系数据库系统必须进行( )处理。 A、定义视图 B、查询优化

第 7 页 共 29 页

机会总是留给有准备的人。

C、数据恢复 D、数据规范化到最高范式 13.E—R模型属于( )

A.信息模型 B.层次模型 C.关系模型 D.网状模型 14. DBMS中实现事务隔离性的子系统是 ( )

A. 安全性管理子系统 B. 完整性管理子系统 C. 并发控制子系统 D. 恢复管理子系统

15.下列那种方式不是嵌入式SQL与主语言之间的通讯方式( ) A.SQL通讯区 B.主变量 C. 游标 D.全局变量 二、 填空题(每空1分,共15分)

1.提供数据库定义、数据装入、数据操纵、数据控制和DB维护功能的软件称为__数据库管理系统______。

2.数据独立性分为__逻辑独立性____________和__物理独立性____________。 3.谓词演算用于关系运算中称_____关系演算_________。

4.分解关系的两条基本原则是:_具有无损连接性的分解、保持函数以来的分解________, 5.用树型结构表示实体类型及实体间联系的数据模型称为___层次模型____________。 6. 关系数据库的标准语言是__结构化查询语言(SQL)____语言。

7.DB并发操作通常会带来三类问题,它们是丢失更新、____不可重复读___和读脏数据。 8. 事务必须具有的四个性质是:原子性、一致性、___隔离性______和持久性。

9.从用户的角度看,数据库系统分为单用户结构、_主从式______、分布式结构和_C/S 结构____。

10.参照完整性规则是定义__参照关系_____与___被参照关系____之间的引用规则。 11.授权所用语句是__GRANT____________,收权所用语句是____REVOKE_____。 三、解释下列术语(每小题3分,共15分)

1.DBMS 2.数据完整性 3.数据模型 4.实体 5.非主属性 四、简答题(每小题3分,共15分)

1.数据安全性包括哪些方面?

2.关系模型的完整性规则有哪几类? 3.等值连接与自然连接的区别是什么? 4.试述三级封锁协议。

5.试述需求分析阶段的任务和方法。 五、应用题(每小题4分,共20分) 设有关系模式为:

学生(学号,姓名,性别,年龄,所在系) 课程(课程号,课程名,任课教师) 选课(学号,课程号,成绩) 请用关系代数完成下列操作:

1.求zhang老师所授课程的课程号和课程名。 2.求没有选修课程号为“2”课程的学生学号。 3.求年龄大于22的女同学的学号和姓名。 4.求选修了全部课程的学生学号和姓名。

5.求选修了学号为“98001”学生所学过的所有课程的学生学号和姓名。

第 8 页 共 29 页