本书《数据库系统实验题及答案》为学习者提供了丰富的实践题目和详尽的答案解析,旨在帮助读者深入理解数据库系统的原理与应用。通过实际操作和案例分析,强化理论知识掌握,并培养解决复杂问题的能力。适用于课程教学、自学及项目开发参考。
实验名称:试验一——SQL语言嵌套查询与数据更新操作
所属课程:数据库原理
实验类型:设计型实验
实验类别:专业基础
学时分配:4学时
### 一、 实验目的
1. 掌握对表中数据的查询和使用SQL命令,灵活运用各种形式的SQL语句;
2. 深化理解关系运算的各种操作(特别是选择、投影、连接与除法);
3. 熟悉并掌握插入、修改及删除表内数据的操作及其相关命令;
4. 加深认识表定义对更新数据的影响。
### 二、 预习内容
1. 掌握SQL SERVER的工作环境。
2. 连接至学生-课程数据库。
3. 复习查询表中数据的SQL语言指令。
4. 回顾插入、修改和删除表内数据的SQL命令使用方法。
### 三、 实验要求(设计要求)
通过参考教材案例,利用SQL SERVER的企业管理和查询分析器两种模式来熟悉嵌套查询及更新操作的方法。
### 四、实验步骤
1. 在S, C, SC三个表格上进行基础查询。
2. 执行连接查询以获取更复杂的数据组合。
3. 运用嵌套查询技术处理多层数据检索任务。
4. 使用聚合函数执行数据分析。
5. 对表中的信息按照不同标准分类汇总,如分组统计和排序操作等。
### 五、实验内容
在S, C, SC三个表格中完成以下数据库操作:
1. 获取学生基本信息;
2. 查找“CS”系学生的详细资料;
3. 检索不在特定年龄范围内的“CS”系学生成员信息(包括学号和姓名);
4. 确定最大年龄的学生及其相关信息。
5. 显示各系中年纪最大的成员的个人信息,按降序排列。
6. 统计每个学科下的学生人数,并以升序列出结果。
7. 计算“CS”系学生的平均年龄并输出总数目;
8. 分析所有系别的学生数量分布情况及相应的平均年龄统计值;
9. 检索课程名称信息,包括无先修课的课程详情及其学时数;
10. 统计没有前置要求的全部课程总学习时间。
11. 列出每位学生的选修科目门数、所获学分以及其成绩平均值;
12. 分析每门科目的学生注册人数及该学科的成绩分布情况;
13. 筛选出各系中平均分数超过85的学生名单,并按系别和分数排序输出结果。
14. 从SC表中检索选修了特定课程号(如“1”或“2”)的学生成员基本信息;
15. 查找同时注册了两门指定科目(即编号为“1”及“2”的课目)的学生名单;
16. 筛选出成绩低于某标准分值且选修名为特定课程名(例如数据库系统)的学生信息,包括其学号、姓名和分数。
17. 检索未注册任何科目的学生资料;
18. 识别至少选修了三门以上课目学生的名单;
19. 获取成绩达到或超过某水平的所有学员的详细记录(含姓名、课程编号及具体得分);
20. 筛选出没有参加考试的学生信息。
21-40项操作涉及数据插入,修改和删除的具体步骤说明。
此外,根据教材P74至75页习题五以及P127页习题五的内容进行相关查询练习,并完成将选定的数据保存为SQL文件及文本段落件的任务。最后,通过比较主键与外键对表操作的影响来进一步理解数据库设计中的关键概念。