杭州电子科技大学学生考试卷(A)卷参考答案
考试课程 课程号 考生姓名 数据库概论 教师号 学号(8位) 考试日期 08年 6 月 16日 任课教师姓名 年级 成 绩 李桂杰 专业 说明:所有题目均直接答在试卷上。
一、 单项选择题(每小题2分,共20分)
1.SQL中的视图提高了数据库系统的 ( D ) A.完整性 B.并发控制 C.隔离性 D.安全性
2.记载数据库系统运行过程中所有更新操作的文件称为 ( C )。
A.更新文件 B. 后备文件 C.日志文件 D.数据文件 3.如果事务T获得了数据项Q上的排它锁,则T对Q ( C ) A.只能读不能写 B.只能写不能读 C.既可读又可写 D.不能读不能写
4.在SQL中,SELECT语句的\表示查询结果中 ( C )
A.属性名都不相同 B.去掉了重复的列 C.行都不相同 D.属性值都不相同 5.已知关系R如图1所示,可以作为R主码的属性组是( B )
R A 1 1 2 1 1 3 B C 2 3 3 4 4 5 4 3 3 4 4 5 图1
D 4 5 6 4 7 6 A. ABC B. ABD C. ACD D. BCD
6. 关系数据库中的哪一种基本数据操作不能同时操作两个关系( B ) A.交 B.选择 C.连接 D.并 7.事务的ACID性质,是指事务具有原子性、一致性和 ( C ) A.隔离性、透明性 B.独立性、透明性 C.隔离性、持久性 D.共享性、持久性 8.个别用户使用的数据视图的描述称为 ( A )
A.外模式 B.概念模式 C.内模式 D.存储模式 9.数据模型的三个组成部分是数据结构、数据操作和 ( c )。 A.数据安全性控制 B.数据一致性规则 C.数据完整性约束 D.数据处理逻辑
10.为实现嵌入式SQL语句与主语言之间的通信,特引进了以下概念(B ) A、视图、游标、SQL通信区; B、SQL通信区、游标、主变量; C、码、SQL通信区、主变量; D、模式、视图、SQL通信区。
二、填空题(每空1分,共14分)
1.数据库的一大特点是数据共享,即用户可以并发访问数据库对象,但并发操作可能会引起丢失更新、不可重复读、读脏数据这几类数据不一致性的问题,于是就要进行并发控制。并发控制的主要技术是封锁,封锁对象的规模称为封锁粒度。
2.在数据库设计中,将E-R模型转换成关系数据模型属于逻辑设计阶段,对数据库模式进行规范化处理,属于逻辑设计阶段,规划存储结构和存取方法属于物理设计阶段。
3.数据管理技术的发展经历了_人工管理_、__文件系统__和 __数据库系统___段。
4.在数据库安全性控制技术中第一步就是用户标识与鉴定,在SQL Server这一步技术包含有两部分内容,一是用户登陆NT服务器的的认证;另一步是已经登陆到NT 的用户进一步成为SQL服务器帐户的认证,根据需要,这样的认证有 WINDOWS身份验证模式 、 混合模式 两种模式。 5.SQL语言中,定义事务的语句主要有BEGIN TRANSACTION 、COMMIT 和 _ROLLBACK_ 。
三、判断改错题(判断正误,错误的请改正。每小题2分,共10分)
1. 可以在基本表上定义视图,但不能在视图上定义视图。 “但不能”改为“也可以”。 (×) 2. DBMS包括DB和DBS 。 改为:DBS包括DB和DBMS (×) 3. 对关系R进行投影运算后,得到关系S,则关系R的元组数大于或等于关系S的元组数。(√)
4. 如果一个关系模式R属于BCNF,则R一定属于3NF。 (√) 5. 在SQL的查询语句中,对应关系代数中“选择”运算的语句是SELECT。 (×) “SELECT”改为“WHERE”或“选择”改为“投影“。
四、 问答题(共20分)
1.数据库的完整性与安全性有什么不同(5分)
数据的完整性和安全性是两个不同的概念。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garbage In Garbage Out)所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的存取。也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据。
2.什么是数据冗余在关系数据库中能完全消除数据冗余吗(5分)
数据库中数据重复存储的现象称为数据冗余。
在关系数据库中不能完全消除数据冗余。因为要实现关系数据库中表与表之间的联系,必须通过公共属性来完成,这些公共属性可能是一个表的主键,也可能是另一个表的外键,有相应的参照完整性规则来保证表之间的联系。所以关系数据库中存在数据冗余,但能控制数据的冗余度。
3.设有关系模式R(A,B,C),F是R上成立的函数依赖集,F={AC→B ,AB→C ,B→C}, 试问R在函数依赖范围内最高能达到第几范式,并简要说明理由。(6分) R∈1NF。
候选码为AC和AB。存在非主属性C对码AB的部分函数依赖,所以R∈1NF,
4.现有部门表(DEPARTMENT)及员工表(EMPLOYEE),假设各表中已有数据如下,请指出下面给出的各行数据中哪一行不能插入EMPLOYEE 表 ,为什么 (4分) DEPARTMENT: (主码为DEPT_ID) DEPT_ID 10 40 NAME Accounting Sales LOCATION New york miami EMPLOYEE: (主码为EMP_ID,外部码为DEPT_ID) EMP_ID EMP_NAME EMP_MGR TITLE DEPT_ID 1234 4567 1045 9876
Green Gilmore Rose Smith 1234 4567 1045 President Senior VP Director Accountant 40 40 10 10 A. (9213, jones, 1045, clerk, 30 ) B. (8997, grace, 1234 ,secretary, 40) C. (5932, allen, 4567, clerk, null )
A行数据不能插入EMPLOYEE 表。
因为部门号30不在部门表的DEPT_ID取值范围内,违反了关系参照完整性约束的规定。
五、数据库设计题(12)
某大学教学数据库中有三个实体集。一是“课程”实体集,属性有课程号、课程名称;二是“教师”实体集,属性有教师工号、姓名、职称;三是“学生”实体集,属性有学号、姓名、性别、年龄。设教师与课程之间有“主讲”联系,每位教师可主讲若干门课程,但每门课程只有一位主讲教师,教师主讲课程将选用某本教材;教师与学生之间有“指导”联系,每位教师可指导若干学生,但每个学生只有一位指导教师;学生与课程之间有“选课”联系,每个学生可选修若干课程,每门课程可由若干学生选修,学生选修课程有个成绩。 (1)试画出E-R图;
(2)将E-R图转换成关系模型,并说明主码和外部码。 (1)E-R图如下
课程号 课程名称 成绩 学号 姓名 年龄N 课程 M 选课 N N 学生 教材 主讲 指导 1 教师 1 工号 姓名 职称
(2)转换成的关系模型具有4个关系模式: 教师(工号,姓名,职称)
学生(学号,姓名,性别,年龄,教师工号) 课程(课程号,课程名称,教师工号) 选课(学号,课程号,成绩)
六、关系代数及SQL语句题(共24分) 已知关系:
Student(Sno,Sname,Ssex,Sage,Clno, Sdept) 学号 姓名 性别 年龄 班级号 系 Course(Cno,Cname,Cpno,Ccredit) 课程号 课程名 先修课号 学分 SC (Cno,Sno,Grade) 课程号 学号 成绩
(一) 用关系代数表示下列操作:(9分)
1. 查询年龄介于20与23岁之间的学生姓名及年龄;
πSNAME,SAGE(σSAGE≥20∧SAGE≤23(Student))
2. 查询没有选修1号课程的学生姓名;
πSNAME(Student)-πSNAME(σCNO=’1’(SC)??Student) 此题可有多种答案
3. 查询选修了“数据库概论”课程且成绩在90分以上的学生姓名。
πSname(σCname=’数据库概论’(Course)??σGrade≥90(SC)??Student) 此题可有多种答案
(二) 用SQL语句完成下列操作:(15分)
1. 查询数学系姓王的学生姓名及年龄,并按学生年龄降序排序;
性别