存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。存储过程可包含程序流、逻辑以及对数据库的查询。
     它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。

创建存储过程:

create procedure mysp1
@Startgrade numeric(4,2)(=10 如果这样写,它就是默认值),@Endgrade numeric(4,2),  

--这两个为输入参数,调用时需为其指定值,记住不用想下面的输出参数一样写output,即后面没有input关键字

--来指定它是输入参数
@maxgrade numeric(4,2) output,@mingrade numeric(4,2) output
as
begin
 select student.sno,sname,sc.cno,cname,grade
 from sc,student,course
 where student.sno=sc.sno and course.cno=sc.cno
 select @maxgrade=max(grade) ,@mingrade=min(grade) from sc
  where grade between @Startgrade and @Endgrade

--两个select语句就是要打印输出的表
end

执行存储过程:

declare @temp1 numeric(4,2),@temp2 numeric(4,2)
execute mysp1 default,90,@maxgrade=@temp1 output,@mingrade=@temp2 output  --注意顺序
select @temp1 as  '最高成绩',@temp2 as '最低成绩'

posted on 2013-11-30 17:41  有志青年期待逆袭  阅读(212)  评论(0编辑  收藏  举报