sql server 存储过程带有输出参数

use db_Sql20001
GO
if exists(select name from sysobjects 
where name='pro_out16'and type='p')
drop proc pro_out16
GO


create procedure pro_out16
  @id varchar(20),
  @name varchar(20),
  @score int output    --设置带返回值的参数
as
set @score=(select English_Score from tb_StuScore where ID=@id and Name=@name)
GO

--执行存储过程
declare @stuscore int   --自定义变量
declare @stuname varchar(20)
declare @stuid varchar(20)
set @stuname='大红'    --对变量进行赋值

exec pro_out16 '1','大红',@stuscore output     --调用存储过程


if @stuscore>=85    --利用存储过程的返回值进行判断
  print rtrim(@stuscore)+'外语成绩为高等水平'
  
  
else if @stuscore>=70
  print rtrim(@stuscore)+'外语成绩为中等水平'
  
  
else if @stuscore<70
  print rtrim(@stuscore)+'外语成绩为一般水平'
  
go

注意:除了return可以返回值,还可以通过参数设置返回值。

你可能感兴趣的:(我的数据库3)