资源描述:
《大数据库实验报告材料3》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用文档专业班级学号姓名实验名称Transact-SQL程序设计实验目的1.掌握分支与循环结构的使用2.掌握游标的使用3.掌握SQLServer全局变量和局部变量特点4.掌握流控制语句if…else基本语法实验内容及过程1.在查询分析器中,选择studentsdb数据库,在学生表中查找姓“张”的学生,并将该生姓名赋于变量@stu_name。(1)、首先查看姓张的学生有多少个代码如下:select姓名from学生表where姓名like'张%'结果如下:(2)、再选择要查看的学生,并将姓名赋给变量(本例选择第一个学生)代码如下:declare@stu_namev
2、archar(10)select@stu_name=姓名from学生表where姓名like'张卫民'select@stu_nameas姓名结果如下:文案大全实用文档2.定义int型局部变量@grademax、@grademin、@gradesum,在成绩表中查找课程编号是“C002”课程的最高分、最低分和总分,分别赋给@grademax、@grademin和@gradesum,并显示。代码如下:declare@grademaxint,@grademinint,@gradesumintselect@grademax=max(分数),@grademin=min(
3、分数),@gradesum=sum(分数)from成绩表where课程编号='0002'select@grademaxas最高分,@grademinas最低分,@gradesumas总分结果如下:3.使用SET命令将查询结果集记录数目赋值给int型局部变量@row。给下面代码中的划线处填上适当的内容,以完成上述操作。DECLARE@rowsintSET@rows=(SELECTCOUNT(*)FROM成绩表)select@rows结果如下:4.以下代码在课程表中插入新记录:DECLARE@intCIdint,@intErrorCodeintINSERTINTO
4、课程表(课程编号,课程名称,学分)VALUES('0006','VB程序设计',2)SELECT@intCId=@@identity,@intErrorCode=@@errorSELECT@intCId,@intErrorCode将该代码段连续执行两次,观察两次显示的信息及课程表中数据的变化,为什么前后两次执行时显示的信息会不同?答:前后二次执行显示的结果分别如下:文案大全实用文档前后二次课程表中数据的变化:前后二次出现不同的原因:@@identity表示上次使用insert操作中使用的identity的值,@@error表示前一条SQL语句报告的错误号,当第
5、一次执行插入语句后,在课程表中就添加了新数据,当第二次执行相同的操作时,由于已经存在了相同的记录,系统将会报错,这样就会将错误号赋值给@@error,@@error又将错误号赋值给intErrorCode,所以导致前后二次出现的结果不同。5.在studentsdb数据库的学生表中,以“性别”为分组条件,分别统计男生和女生人数。代码如下:declare@mansumint,@womansumintset@mansum=(selectcount(性别)from学生表where性别='男'groupby性别)set@womansum=(selectcount(性别)
6、from学生表where性别='女'groupby性别)select@mansumas男生人数,@womansumas女生人数结果如下:文案大全实用文档6.在成绩表中,使用适当函数找出“高等数学”课程的最高分、最低分和平均分,并分别赋予@grademax、@grademin、@gradesum。代码如下:declare@grademaxint,@grademinint,@gradesumintselect@grademax=max(分数),@grademin=min(分数),@gradesum=sum(分数)from成绩表where课程编号='0002'sel
7、ect@grademaxas最高分,@grademinas最低分,@gradesumas总分结果如下:7.定义一个datetime型局部变量@studate,以存储当前日期。计算学生表中的学生的年龄,并显示学生的姓名、年龄。在以下代码的划线部分填人适当内容,以实现上述功能。DECLARE@studatedatetimeSET@studate=getdateSELECT姓名,year(getdate)-year(出生日期)AS年龄FROM学生表结果如下:8.请用单行注释将下列命令行所实现的功能予以注释(填入括号内)。(--将所有姓陈的同学的姓名和家庭地址列出来)
8、SELECT姓名,家庭地址文案大全实用