当前位置: 代码迷 >> Sql Server >> 如何把一个存储过程得到的值保存到变量里面
  详细解决方案

如何把一个存储过程得到的值保存到变量里面

热度:53   发布时间:2016-04-27 16:55:05.0
怎么把一个存储过程得到的值保存到变量里面?
一个存储过程
最后一句是select   @maxnum
执行这个存储过程exec   pro_no   '参数 '
就是得到一个一行一列的结果集
[email protected]
[email protected]?[email protected]
我用
declare   @ID
exec   @ID   =   pro_no   '参数 '
select   @ID
得到的结果是0
应该怎么写?
还是要把存储过程的返回值写成return   @maxnum?

------解决方案--------------------
把存储过程的返回值写成return @maxnum試試
------解决方案--------------------
或者可以用輸出參數
------解决方案--------------------
如果是一个数据,用return就行了
------解决方案--------------------
使用output就可以,来自帮助文档的一个例子:
USE pubs
GO
IF EXISTS(SELECT name FROM sysobjects
WHERE name = 'titles_sum ' AND type = 'P ')
DROP PROCEDURE titles_sum
GO
USE pubs
GO
CREATE PROCEDURE titles_sum @@TITLE varchar(40) = '% ', @@SUM money OUTPUT
AS
SELECT 'Title Name ' = title
FROM titles
WHERE title LIKE @@TITLE
SELECT @@SUM = SUM(price)
FROM titles
WHERE title LIKE @@TITLE
GO
  相关解决方案