实验八 存储过程
实验内容 (1) 创建一个不带参数的存储过程,要求查询所有学生的姓名,所选修课的课程名及成绩。并执行该存储过程。 create procedure SCG as begin select sname,cname,grade from student,Course,SC where student.Sno=SC.Sno and SC.Cno=Course.Cno end
exec SCG (2) 创建一带参数的存储过程,根据学生姓名查询该学号、姓名及所选修的课程号、课程名、成绩。并用“张立”去调用该存储过程。 create procedure SCG1 @sname char(9) as begin select student.Sno,sname,sc.Cno,cname,grade from Student,SC,Course where student.Sname=@sname and student.Sno=SC.Sno and Course.Cno=SC.Cno end
exec SCG1张立 (3)创建带有输入参数存储过程,根据学生姓名比较两个学生所选修课的平均成绩,返回比较的结果。用姓名为“李勇”和“刘晨”的学生去执行该存储过程。 create procedure SCG2 @sname1 char(9), @sname2 char(9) as begin declare @avg1 int,@avg2 int select @avg1=AVG(grade) from student,Course,SC where Student.Sno=SC.Sno and Course.Cno=SC.Cno and Sname=@sname1 select @avg2=AVG(grade) from student,Course,SC where Student.Sno=SC.Sno and Course.Cno=SC.Cno and Sname=@sname2
if(@avg1>@avg2) print @sname1+'的成绩大于'+@sname2+'的成绩' else print @sname1+'的成绩小于'+@sname2+'的成绩'
end
exec SCG2李勇,刘晨 |