《数据库系统原理》作业题与参考答案.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《数据库系统原理》作业题与参考答案.doc》由会员分享,可在线阅读,更多相关《《数据库系统原理》作业题与参考答案.doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流数据库系统原理作业题与参考答案.精品文档.数据库系统原理作业题与参考答案作 业 题 PART 基础篇CHAPTER 1 数据库系统引论1. 教材Page 10 习题3CHAPTER 2 数据模型1. 教材Page 54 习题7(1)(4), (6)CHAPTER 3 SQL语言1. 教材Page 88 习题25(See: 参考答案1)Part 系统篇CHAPTER 4 DBMS引论1. 名词解释:(1)事务;(2)数据目录;(3)多线程DBMS;(4)集中式DB与分布式DBCHAPTER 5 数据库的存储结构1. 试解释关系DB系统中基表数据
2、的三种典型存取路径:(1)索引;(2)簇集;(3)散列。(即基表的四种典型存储机制:(1)表;(2)索引的表;(3)索引簇表;(4)散列簇表)。CHAPTER 6 查询处理与优化1. 用语法树表示教材Page 66例3-4查询的代数优化过程。(See: 参考答案2)CHAPTER 7 事务管理1. 教材Page 172 习题62. 教材Page 172 习题7CHAPTER 8 数据库的安全与完整性约束1. 教材Page 185 习题12. 教材Page 185 习题2CHAPTER 9 触发器与主动数据库系统1. 职员(emp)基表定义见课件。试用 SQL:1999/SQL3语法定义一个名为
3、empBandh的触发器来实现:一旦在emp表中删除一个员工的数据,只要此员工的工种不是“bandh”,就在emp表中恢复(插入)此员工的数据,将其工种(job)置为“bandh”,月薪(sal)置为2000.0,佣金(comm)置为NULL,其余属性不变。(See: 参考答案3)PART 应用篇CHAPTER 10 数据依赖与关系模式的规范化1. 教材Page 225 习题8(See: 参考答案4)CHAPTER 11 数据库设计1. 试对四个实体:学生、班级、课程、教师,及它们间的四个联系:组成、选课、任课、班主任进行E/R建模,并把E/R数据模式转换成关系数据库模式,并写出创建基表的SQ
4、L DDL语句,同时定义PK与FK、以及你认为必要的其他完整性约束。(See: 参考答案5)CHAPTER 12 数据库管理1. 教材Page 225 习题1参 考 答 案 参考答案1基表(详细定义见教材):student (sno, sname, sex, bdate, height)course (cno, lhour, credit, semester)sc (sno, cno, grade)(1) 查询身高大于1.80米的男生的学号和姓名。SELECT sno, snameFROM studentWHERE height1.8 AND sex = 男;(2) 查询计算机系秋季所开课程的
5、课程号和学分数。SELECT cno, creditFROM courseWHERE cno LIKE cs% AND semester = 秋;(3) 查询选修计算机系秋季所开课程的男生姓名、课程号、学分数、成绩。SELECT o, credit, sname, gradeFROM sc, course, studentWHERE o = o AND student.sno = sc.sno ANDo LIKE cs% AND semester = 秋 AND sex = 男ORDER BY o;(4) 查询至少选修一门电机系课程的女生的姓名。SELECT snameFROM student
6、WHERE sex = 女 ANDEXISTS ( SELECT * /相关子查询FROM scWHERE sc.sno = student.sno ANDo LIKE ee%);或者:SELECT snameFROM studentWHERE sex = 女 ANDsno IN ( SELECT DISTINCT sno /不相关子查询FROM scWHERE cno LIKE ee%);或者用“连接”(不好!):SELECT DISTINCT snameFROM student, scWHERE student.sno = sc.sno AND sex = 女 AND cno LIKE e
7、e% ;注:此处的DISTINCT,若加,则会丢失其他同姓名而又均选修了电机系课程的学生;若不加,则选多门电机系课程的某学生的姓名重复出现。因此,用“连接”的方法不好!(5) 查询每位学生已修课程的门数和总平均成绩。SELECT sc.sno, sname, COUNT(o), AVG(sc.grade)FROM sc, studentWHERE student.sno = sc.snoGROUP BY sc.sno;注:标准SQL(见斯坦福书Page 275)或Oracle 7中SELECT列表仅可包含下列表达式类型:(1)常数;(2)组函数;(3)与GROUP BY子句中相同的列表达式;(
8、4)由GROUP BY子句中的列表达式所组成的表达式。因此,上述查询中不能再连接student表而获得sname。(6) 查询每门课程选修的学生人数、最高成绩、最低成绩和平均成绩。SELECT cno, COUNT(sno), MAX(grade), MIN(grade), AVG(grade)FROM scGROUP BY cno;(7) 查询所有课程的成绩都在80分以上的学生的姓名、学号,并按学号升序排列。SELECT sname, snoFROM studentWHERE 80 ALL ( SELECT grade /相关子查询FROM scWHERE sc.sno = student.
9、sno ANDgrade IS NOT NULL)ORDER BY sno;注:具体的RDBMS对NULL值的处理可能不同。(8) 查询缺成绩的学生姓名、缺成绩的课程号及其学分数。SELECT sname, o, creditFROM student, sc, courseWHERE grade IS NULL ANDstudent.sno=sc.sno AND o=o;(9) 查询有(含)一门以上三学分以上课程的成绩低于70分的学生的姓名。SELECT snameFROM studentWHERE sno IN ( SELECT DISTINCT sno /不相关子查询FROM scWHER
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库系统原理 数据库 系统 原理 作业题 参考答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内