SSMS获取存储过程中的返回值和output值
写在前面的话
我们经常会在存储过程中调用其他的存储过程,那么,我们如何获取另一个存储过程的returnValue和outputValue呢?
建表(Folder)如下:
列名 类型 备注 FolderId int 文件夹ID 主键 自动增减 FolderName nvarchar(50) 文件夹名 ParentFolderId int 父文件夹ID GroupNo nvarchar(12) 单位代码 UserId int 用户ID CreateTime datetime 文件夹建立时间
添加存储过程如下:
ALTER PROCEDURE dbo.Base_CreateFolder ( @FolderName nvarchar(50), @ParentFolderId int=null, @GroupNo nvarchar(12), @UserId int, @FolderID int=null output ) AS /* SET NOCOUNT ON */ INSERT INTO WFMT_Folder (FolderName, ParentFolderId, GroupNo, UserId, CreateTime) VALUES (@FolderName, @ParentFolderId, @GroupNo, @UserId,getdate()) select @FolderID=@@identity RETURN 1
在SSMS中执行存储过程:
declare @outputValue int declare @returnValue int exec @returnValue = Base_CreateFolder @FolderName='123',@groupNo='1',@UserID=1,@folderid =@outputValue output select outValue=@outputValue,returnValue=@returnValue
结果: