熟练掌握表中数据的各种查询功能,为后继学习作准备。
1、了解并掌握SQL管理控制器的使用;
2、掌握基本表的数据查询。
1、每人一台计算机。
2、计算机安装有SQL SERVER2008。
1、预习教材第三章,熟悉SQL查询语句。
2、掌握单表查询语句的一般格式。;
3、掌握单表无条件、有条件查询及查询结果排序与分组。
4、掌握多表的连接查询以及嵌套查询。
SQL语言应用。
1、启动SQL查询分析器;
2、选择“学生管理数据库”;
3、验证如下例子:
一、单表查询
1 无条件查询
1.1 查询全体学生的详细记录。
1.2 查询全体学生的姓名(Sname)、学号(Sno)、所在系(Sdept)。
1.3 查询全体学生的姓名(Sname)、出生年份及学号(Sno)。由于SELECT子句的<目标列表达式>不仅可以是表中的属
性列,也可以是表达式,故可以查询经过计算的值。
1.4 查询全体学生的姓名、出生年份和学号,要求别名用汉字的别名“姓名”、“出生年份”和“学号”。
1.5 查询选修了课程的学生学号。
2 条件查询
2.1 查询“计算系”全体学生的学号(Sno)和姓名 (Sname)。
2.2 查询年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。
2.3 查询年龄不在18-22岁之间的学生姓名(Sname)及年龄(Sage)。
2.4 查询信息、数学和计算机系学生的学号(Sno)、姓名(Sname)和性别(Ssex)。
2.5 查询既不是信息系、数学系、也不是计算机系的学生的姓名(Sname)和性别(Ssex)。
2.6 查询所有姓刘的学生的姓名(Sname)、学号(Sno)和性别(Ssex)。
2.7查询姓“刘”且全名为2个汉字的学生的姓名(Sname)和所在系(Sdept)。
2.8 查询所有不姓刘的学生姓名(Sname)和年龄(Sage)。
2.9 查询课程名为“DB_设计”的课程号(Cno)和学分(Credits)。
2.10查询以"DB_"开头,且倒数第2个汉字字符为“设”的课程的详细情况。
2.11 假设某些学生选修课程后没有参加考试,所以有选课记录,但没有考试成绩。试查询缺少成绩的学生的学号(Sno)和相
应的课程号(Cno)。
2.12 查询所有有成绩的学生学号(Sno)和课程号(Cno)。
3 查询结果排序
3.1 查询选修了C03号课程的学生的学号(Sno)和成绩(Grade),并按成绩降序排列。
3.2 查询全体学生情况,查询结果按所在系的系名(Sdpet)升序排列,同一系中的学生按年龄(Sage)降序排列。
1.1 查询全体学生的详细记录。
I、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
1.2 查询全体学生的姓名(Sname)、学号(Sno)、所在系(Sdept)。
I、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
1.3 查询全体学生的姓名(Sname)、出生年份及学号(Sno)。
I、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
1.4 查询全体学生的姓名、出生年份和学号,要求别名用汉字的别名“姓名”、“出生年份”和“学号”。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
1.5 查询选修了课程的学生学号。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
2.1 查询“计算系”全体学生的学号(Sno)和姓名 (Sname)。
I、在创建查询框中输入SQL语句,如下图所示:
2.2 查询年龄在18~22岁(包括18岁和22岁)之间的学生姓名(Sname)及年龄(Sage)。
I 、在创建查询框中输入SQL语句,如下图所示:
2.3 查询年龄不在18-22岁之间的学生姓名(Sname)及年龄(Sage)。
I 、在创建查询框中输入SQL语句,如下图所示:
2.4 查询信息、数学和计算机系学生的学号(Sno)、姓名(Sname)和性别(Ssex)。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
2.5 查询既不是信息系、数学系、也不是计算机系的学生的姓名(Sname)和性别(Ssex)。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
2.6 查询所有姓刘的学生的姓名(Sname)、学号(Sno)和性别(Ssex)。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
2.7 查询姓“刘”且全名为2个汉字的学生的姓名(Sname)和所在系(Sdept)。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
2.8 查询所有不姓刘的学生姓名(Sname)和年龄(Sage)。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
2.9 查询课程名为“DB_设计”的课程号(Cno)和学分(Credits)。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
2.10 查询以"DB_"开头,且倒数第2个汉字字符为“设”的课程的详细情况。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
2.11 查询缺少成绩的学生的学号(Sno)和相应的课程号(Cno)。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
2.12 查询所有有成绩的学生学号(Sno)和课程号(Cno)。
I 、在创建查询框中输入SQL语句,如下图所示:
II、执行SQL语句,其查询结果如下图所示:
3.1 查询选修了C03号课程的学生的学号(Sno)和成绩(Grade),并按成绩降序排列。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
3.2 查询全体学生情况,查询结果按所在系的系名(Sdpet)升序排列,同一系中的学生按年龄(Sage)降序排列。
I 、在创建查询框中输入SQL语句,如下图所示:
II 、执行SQL语句,其查询结果如下图所示:
通过此次上机实验,使我更加熟悉了对SQL语句及其应用,虽然是第一次上机调试但并不感到陌生。在SQL语句调试的过程中 虽错误总是千奇百怪,但根据老师教授的知识很快的得以纠正,完成了本次实验,通过本次实验,深刻的意识到自身的不 足,也明白了理论与实践的差距,同时自己学过的知识也得以加深理解与巩固,感谢老师给予我们机会,使我们的知识更 加牢固!
学生表Student:
课程表Course:
选课表SC: