《数据库原理》实验 班级: 学号: 姓名: 四、实验报告
1. 简述本次实验所用到的SQL命令及其功能。
2. 在MS SQL SERVER中数据库的“分离|添加”与“备份|还原”是相同的功能吗?
3. 实验总结(实验过程中出现的问题、解决方法、结果如何或其它)
4
《数据库原理》实验 班级: 学号: 姓名: 实验二——SQL语句
一、实验目的
1. 熟悉SQL的数据查询语言,能使用SQL进行单表查询、连接查询、嵌套查询、集合查询
和统计查询,能理解空值的处理;
2. 熟悉数据库的数据更新操作,能使用SQL语句对数据库进行数据的插入、更新、删除操
作;
3. 熟悉SQL支持的有关视图的操作,能创建、查询及取消视图;
4. 了解NULL在数据库中的特殊含义,掌握使用SQL进行与空值相关的操作;
二、实验预习内容
在认真阅读教材及实验指导书【实验1.2 数据查询】、【实验1.3 数据更新】、【实验1.4 视图】和【实验1.6 空值和空集的处理】的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1. 使用SCHOOL数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操
作。请在空白处填写相应的SQL命令。
1) 查询年级为2001的所有学生的名称,按编号顺序排列;
2) 查询所有课程名称中含有data的课程编号;
3) 统计所有老师的平均工资;
4) 查询至少选了3门课的学生编号;
5) 查询学号为80009026的学生的姓名、所选课名及成绩;
6) 查询没有学生选的课程编号;
5
《数据库原理》实验 班级: 学号: 姓名: 7) 查询既选了C++又选了Java课程的学生编号;
8) 查询选了C++但没选Java课程的学生编号;
9) 向STUDENTS表中插入“LiMing”的个人信息(编号:700045678,名字:LiMing,
Email:LX@cdemg.com,年级:1992);
10) 将“LiMing”的年级改为2002;
11) 删除所有选了Java课程的学生选课记录;
12) 求出每门课的课程号、选课人数,结果存入数据库表T1中。
13) 查询所有选课记录的成绩并换算为五分制(注意NULL的情况);
6
《数据库原理》实验 班级: 学号: 姓名: 14) 查询成绩小于0的选课记录,统计总数、平均分、最大值和最小值(注意查询结
果中NULL的情况);
15) 按成绩顺序排序显示CHOICES表中所有记录。(使用ORDER BY排序,注意NULL的情况);
16) 创建视图V1,显示学生姓名、所选课名称、任课教师名;
17) 取消V1视图;
2. 使用STC数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下操作。请在空白处填写相应的SQL命令或其它内容。 1) 创建视图V2,显示计算机(CS)系学生信息;(结合下面的b)小题,V2视图创建2
次,分别使用/不使用WITH CHECK OPTION选项) (1)不加WITH CHECK OPTION (2)加WITH CHECK OPTION
7
《数据库原理》实验 班级: 学号: 姓名: 2) 插入元组(99999,张三,20岁,男,PH)到V2中,运行结果如何?(观察WITH CHECK
OPTION对结果的影响); (1)不加WITH CHECK OPTION的结果 (2)加WITH CHECK OPTION的结果 3) 在V2基础上,查询所有计算机系女生信息;
3. 结束本次实验
三、实验课后训练
1. 掌握SQL SERVER中流控制语句及其它常用编程语句;
1) 使用查询分析器,编写代码,输出乘法口诀表。
2. 自行练习实验指导书P24【实验1.2 数据查询】1.2.5自我实践部分; 3. 自行练习实验指导书P30【实验1.3 数据更新】1.3.5自我实践部分; 4. 自行练习实验指导书P36【实验1.4 视图】1.4.5自我实践部分;
5. 自行练习实验指导书P49【实验1.6 空值和空集的处理】1.6.5自我实践部分;
8