数据库的技术基础模拟试题 下载本文

内容发布更新时间 : 2024/12/26 12:55:44星期一 下面是文章的全部内容请认真阅读。

-----

-- - -- - - -- - -- - -- - -- - -- -: --业---专 ---- - -- - -- - -- - -- - -- - -- : 级 年 线 - 封 : 院-学 密 - - -- - -- -: ---名--姓 ---- -- - -- - - -- - -- - -- - -- - -- - -: ---号--学

----国防科技大学2008-2009学年春季学期

《数据库技术基础》考试试卷

考试形式: 开卷 考试时间: 150 分钟 满分: 100 分。

题 号 一 二 三 四 五 六 七 八 九 总分 得 分 评阅人 注意:1、所有答题都须写在此试卷纸密封线右边,写在其它纸上一律无效。 2、密封线左边请勿答题,密封线外不得有姓名及相关标记。

得分 一、问答题(共3小题,每小题5分,共15分)

1、有如下查询Q1和Q2: Q1:SELECT * FROM R; Q2:(SELECT * FROM R)

INTERSECT (SELECT * FROM R);

Q1和Q2是否产生同样的结果,为什么?

2、比较完整性约束中的主键约束(PRIMARY KEY)和唯一性约束(UNIQUE),至少说明它们的两个不同之处。

第 1 页 (共 12 页)

3、什么是事务的ACID性质?

得分 三、解答题(共5小题,每小题4分,共20分)

得分 TRUE (T)、FALSE (F)和UNKNOWN (U)作为变量X、Y和Z的全部可能取值,用T、F和U填写下表。

X U U U U U

Y T F F T U

Z T F T U U

(X AND Y) OR (NOT Z)

二、填空题(共5小题,每小题1分,共5分)

考虑如下关系表,每个关系的主键用下划线标明。

employee(EID, name, salary, DNo)表示雇员ID、姓名、工资、所在的部门编号。 department(DNo, DeptName, MgrID)表示部门编号、部门名称和该部门的经理ID。 project(PNo, location, ProjName)表示项目的编号、地点、项目名称。 HourLog(EID, PNo, hours)表示雇员(EID)第 2 页 (共 为项目12 页) (PNo)工作的小时数(hours)。

----- -- - -- - -- - - -- - -- - -- - -- : ---业---专 ---- - -- - -- - -- - -- - -- - -- : 级 年 线 - 封 : 院-学 密 - - -- - -- -: ---名--姓 ---- -- - -- - - -- - -- - -- - -- - -- - -:

---号---学---假定每个部门只有1个经理,每个雇员可以参加多个项目(包括

0个),每个项目至少有1个雇员参加,HourLog关系列出了雇员参加的项目的工作小时数。

1、用关系代数表达查询:找出为一个项目工作时数超过100的雇员的ID和姓名。

2、用关系代数表达查询:找出没有参加任何项目的雇员的姓名。

3、用SQL表达查询:找出是部门D10并且参加项目P345的雇员姓名和ID。

第 3 页 (共 12 页)