在sql Server中~如何利用RETURN返回存储过程的值~~~

兄弟姐妹们帮我教一下,在sql Server中~如何利用RETURN返回存储过程的值~~~
最新回答
天堂若比邻°く

2024-11-07 02:47:11

从存储过程返回非表类型的值有二种方法:
1.存储过程使用return语句返回值.此种情况下,接收该存储过程值的方法是:
delcare @ReturnValue int /*(与存储过程return语句返回值的类型相同)*/
exec @ReturnValue = StoredProc /*StoredProc为一个存储过程*/
2.存储过程使用OUTPUT输出参数.此种情况下,直接使用OUTPUT输出参数即可:
declare @id int
set @id = 1
exec StoreProc @id OUTPUT /*StoredProc为一个存储过程*/
select @id
做梦的季节

2024-11-07 00:02:34

假设有这样定义的存储过程checkstateCREATE PROCEDURE checkstate @param varchar(11) AS IF (SELECT state FROM authors WHERE au_id = @param) = 'CA' RETURN 1 ELSE RETURN 2 下例显示从 checkstate 执行中返回的状态。第一个显示的是在加利福尼亚州的作者;第二个显示的是不在加利福尼亚州的作者,第三个显示的是无效的作者。必须先声明 @return_status 局部变量后才能使用它。DECLARE @return_status int EXEC @return_status = checkstate '172-32-1176' SELECT 'Return Status' = @return_status GO OutPut是通过参数传递值的