(难度系数C)正确答案:关系
7. 如果一个关系模式R是1NF,并且关系的每个决定因子都是候选码,那么R至少应该是_____________范式。
(难度系数C)正确答案:BC范式
8. SQL中,表有三种: ____________、临时表(虚表)和____________。
(难度系数C)正确答案:视图、基本表
9. 数据库中术语英文缩写有“RDBMS”和DML等,其中文的意思分别为
_______________和_______________。
(难度系数C)正确答案:关系数据库管理系统 数据操纵语言
10.在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保
持原有的函数依赖和________________________
(难度系数C)正确答案:无损连接
11.在 SQL 语言中,如果要为一个基本表增加列和完整性约束条件,应该使用 SQL 语句 __________________________。
(难度系数C)正确答案:ALTER TABLE 三、简答题:(本题15分)
1、数据库管理系统的主要功能 (5分)
(难度系数B)正确答案:
答:数据库管理系统(DBMS)是位于操作系统与用户之间的一个数据管理软件,它主要功能包括以下几个方面: (2分) 数据定义功能 DBMS提供数据描述语言(DDL),用户可通过它来定义数据。 数据操纵功能 DBMS还提供数据操纵语言(DML),实现对数据库的基本操作:查询、插入、删除和修改。 (1分) 数据库的运行管理 这是DBMS运行时的核心部分,它包括开发控制,安全性检查,完整性约束条件的检查和执行,数据库的内容维护等。 (1分)
数据库的建立和维护功能 它包括数据库初始数据的输入及转换,数据库的转储与恢复,数据库的重组功能和性能的监视与分析功能等。 (1分) 2、DBA的职责是什么 (5分)
(难度系数C)正确答案:
(1)参与数据库设计,决定数据库的结构和内容; (1分)
(2)定义数据的安全性、完整性,负责分配用户对数据库的使用权限和口令管理
(3分)
(3)监督控制数据库的使用和运行,改进或重新构造数据库系统; (1分)
(4)帮助终端用户使用数据库。
3、在数据库设计过程中将E-R模型转换为关系数据模型的转换原则 (5分)
(难度系数A)正确答案:
答:E-R图中的每个实体,对应一个关系,该关系具有属性为实体的全部属性,关键字为实体的关键字。E-R图中的一个联系对应一个关系,该关系具有属性为联系的属性以及该联系相关的实体的关键字。考虑到数据库优化,根据联系类型不同在转换为关系模式时具体处理不同: (2分)
(1)联系类型为1:1时,-先将两个实体分别转换两个关系模式,然后在任意一
个关系模式中加入另一个关系模式的键和联系类型的属性。 (1分)
(2)1:N-先将两个实体分别转换为两个关系模式,然后在N端实体转换的关系模式中加入1端实体转换的关系模式的键和联系类型的属性。 (1分)
(3)M:N-先将两个实体分别转换为两个关系模式,然后将联系类型转换为第
三个关系模式,其属性由两端实体的键和联系类型的属性构成。 (1分)
四、T-SQL综合题(共35分)
1、有学生-课程关系数据库,各关系表描述如下: student 列名 说明 数据类型 约束 Sno Sname Ssex Sage Sdept 学号 姓名 性别 年龄 院系 字符(8) 主键 字符(12) 非空,唯一 字符(2) 取‘男’或‘女’, 默认值 ‘女’ 整型 取值16~40,默认值21 字符(20) 默认 ‘电子系’ Course
列名 Cno Cname 说明 数据类型 约束 课程号 字符(8) 主键 课程名 字符(8) 非空 Teacher 教师名 字符(10) 唯一 SC 列名 Sno Cno Grade 说明 学号 课程号 成绩 数据类型 约束 字符(8) 主键,参照Student表,级联更新和删除 字符(8) 主键,参照Course表,级联更新,拒绝删除 短整型 取值0~100
(1)用关系代数表达式表示下列问题
1)检索选修了教师‘王敏’所授课程的学生姓名和学号 ; (2分)
(难度系数B)正确答案:
∏姓名, 学号(Student (SC (授课教师=‘王敏’ (Course) ) ) ) 或 ∏姓名, 学号( 授课教师=‘王敏’( Student SC Course))
2)检索选修了课程号为C3或者C5的学生学号和成绩 ; (3分)
(难度系数B)正确答案: ∏学号,成绩( 课程号=‘C3’( SC)∪∏学号(
(2)用SQL语句实现下列问题
课程号=‘C5’
( SC)
1)写出创建S表的T-SQL语句 ; (5分)
(难度系数A)正确答案:
CREATE TABLE S
( Sno CHAR(8) PRIMARY KEY,
Sname CHAR(12) NOT NULL UNIQUE,
Ssex CHAR(2) CHECK(Ssex in('男','女')) DEFAULT '女',
Sage INT CHECK(STage>=16 AND STage<=40) DEFAULT 21, Sdept CHAR(20) DEFAULT ‘电子系’);
2) 检索姓\李\且倒数第2个字为\华\或\涛\字的学生的姓名和学号; (4分)
(难度系数A)正确答案:
SELECT Sname,Sno
FROM Student
WHERE Sname LIKE '李% [华涛] _ _';
3)向学生选修课程表中插入元组“学生S6选修课程号C2”。 (2分)
(难度系数B)正确答案:
INSERT INTO SC (Sno, Cno) VALUES( ‘S6’,’ C2’ )
4) 删除选课成绩在60分以下的学生记录; (4分)
(难度系数A)正确答案:
DELETE
FROM Student WHERE SNO IN
(SELECT SNO FROM SC
WHERE GRADE<60);
或
DELETE
FROM Student WHERE = AND <60 ;
5) 把“大学英语”课程成绩提高5%; (3分)
(难度系数B)正确答案:
UPDATE SC
SET Grade=Grade* WHERE Cno IN
(SELECT Cno FROM Course WHERE Cname=‘大学英语’)
6)求出男同学的每一年龄组(超过4人)有多少人要求查询结果按人数降序排列,人数相同的按年龄升序排列; (5分)
(难度系数A)正确答案:
SELECT Sage, COUNT(Sno) FROM Student WHERE Ssex=‘男’
GROUP BY Sage HAVING COUNT(Sno)>4
ORDER BY 2 DESC, Sage ASC