数据库技术基础模拟试题答案.docVIP

  • 19
  • 0
  • 约8.5千字
  • 约 12页
  • 2016-05-23 发布于重庆
  • 举报
数据库技术基础模拟试题答案

第 11 页 (共 12 页) 第 12 页 (共 12 页) 学号: 姓名: 学院: 年级: 专业: ------------------------------------------------- 密 - 封 - 线 ------------------------------------------------------ 国防科技大学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),至少说明它们的两个不同之处。 假设两个表有如下记录: Emp Dept name dno dno location Tom 111 111 Irvine Mary 111 222 LA Jack 222 333 SF Henry 222 1、说明执行如下查询后两个表中的记录: DELETE * FROM Dept WHERE Dno = 111; 解: Emp Dept name dno dno location Tom NULL 222 LA Mary NULL 333 SF Jack 222 Henry 222 2、执行完1中查询后,继续执行如下查询后两个表中还有什么记录? UPDATE Dept SET Dno = 444 WHERE Dno = 222; 解: Emp Dept name dno dno location Tom NULL 444 LA Mary NULL 333 SF Jack 444 Henry 444 或:SELECT PNo, EID FROM HourLog WHERE (PNo, hours) IN (SELECT PNo, MAX(hours) FROM HourLog GROUP BY PNo); 得分 四、说明题(共5分) 参考题三中关系表employee的定义,简要说明如下触发器的含义。 CREATE TRIGGER FooTrigger AFTER UPDATE OF salary ON Employee REFERENCING OLD AS OldTuple, NEW AS NewTuple WHEN (OldTuple.salary NewTuple.salary AND OldTuple.name = Tom Smith) UPDATE Employee SET salary = OldTuple.salary WHERE EID = NewTuple.EID FOR EACH ROW; 答:不能降低Tom Smith的的工资。 得分 五、解答题(共2小题,每小题5分,共10分) 给定表Dept(dno, location)和表Emp(name, dno),其中Emp由如下SQL语句创建。 CREATE TABLE Emp (name char(15), dno int, FOREIGN KEY dno REFERENCES Dept(dno) ON DELETE SET NULL ON UPDATE CASCADE); 学号: 姓名: 学院: 年级: 专业: ------------------------------------------------- 密

文档评论(0)

1亿VIP精品文档

相关文档