【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《实验二》,欢迎阅读!
实 验二
实验名称:数据查询 实验学时:4 实验目的:
1) 掌握使用T-SQL语句对基本表结构的更改操作 2) 掌握使用T-SQL语句对表的查询操作。 3) 重点掌握 SELECT语句的使用方法。 4) 掌握子查询(嵌套查询)、连接查询的使用。 实验内容及步骤:
(一) 使用T-SQL语句对表结构的更改操作 基本格式如下:
ALTER TABLE 表名
ADD [ CONSTRAINT 约束名 ] FOREIGN KEY (<列名>)
REFERENCES 引用表名 (<列名>)
(二) SELECT语句对表的查询操作。 基本格式如下:
SELECT <目标列名序列> --需要哪些列
FROM <数据源> --来自于哪些表 [WHERE <检索条件>] --根据什么条件 [GROUP BY <分组依据列>] [HAVING <组提取条件>] [ORDER BY <排序依据列>] 实验习题:
(一) 对表结构的更改操作
(1) 向Student表增加“入学时间”,其数据类型为日期型
(2) 将年龄的数据类型由字符型(如果原来是字符型)改为整数 (3) 增加课程名称必须取值唯一值的约束条件
(二)SELECT语句对表的查询操作。
1.查询学生选课表中的全部数据。
2.查询计算机系的学生的姓名、年龄。
3.查询成绩在70~80分之间的学生的学号、课程号和成绩。
4.查询计算机系年龄在18~20之间且性别为“男”的学生的姓名、年龄。 5.查询课程号为“c01”的课程的最高的分数。 6. 查询计算机系学生的最大年龄和最小年龄。 7. 统计每个系的学生人数。
8. 统计每门课程的选课人数和考试最高分。
9. 统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。 10. 查询总成绩超过200分的学生,要求列出学号、总成绩。 11. 查询选修了“c02”号课程的学生的姓名和所在系。
12. 查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩降序排列结果。
13. 查询哪些学生没有选课,要求列出学号、姓名和所在系。 14. 查询与VB在同一学期开设的课程的课程名和开课学期。 15.查询与李勇年龄相同的学生的姓名、所在系和年龄。 16.查询计算机系年龄最小的2名学生的姓名和年龄。
17. 查询VB成绩最高的前2名学生的姓名、所在系和VB成绩,包括并列的情况。 18. 查询选课人数最多的前2名学生的学号和选课门数,包括并列的情况。 19. 查询学生人数最多的系,列出系名和人数。 20. 用子查询实现如下查询:
(1)查询选修了“c01”号课程的学生的姓名和所在系。
(2)查询数学系成绩80分以上的学生的学号、姓名、课程号和成绩。 (3)查询计算机系考试成绩最高的学生的姓名。
(4)查询数据结构考试成绩最高的学生的姓名、所在系、性别和成绩。 21.查询没有选修VB课程的学生的姓名和所在系。 22.查询计算机系没有选课的学生的姓名和性别。
23. 查询计算机系考试平均成绩最低的学生的姓名以及所选的课程名。 24. 查询1~5学期中,选课人数最少的课程的课程名、开课学期和学分。 25. 创建一个新表,表名为test_t,其结构为:(COL1, COL 2, COL 3),其中:
COL1:整型,允许空值。
COL2:字符型,长度为10 ,不允许空值。 COL3:字符型,长度为10 ,允许空值。
试写出按行插入如下数据的语句(空白处表示空值)。
COL1 COL2 COL3
1 2
26. 删除考试成绩低于50分的学生的选课记录。
27.删除没有人选的课程记录。
28.删除计算机系VB成绩不及格学生的VB选课记录。 29. 删除VB考试成绩最低的学生的VB选课记录。 30.将第2学期开设的所有课程的学分增加2分。 31.将VB课程的学分改为3分。 32. 将计算机系学生的年龄增加1岁。
33.将信息系学生的“计算机文化学”课程的考试成绩加5分。 34.将选课人数最少的课程的学分降低1分。(未考虑没人选的课程)
实验报告要求: 实验目的
实验习题的运行结果 实验习题的源程序清单
B1 B2 B3
C2
本文来源:https://www.wddqxz.cn/b9295ec4ba1aa8114531d9c0.html