我定义了一个存储过程,如下:
CREATE PROC pr_Test
AS
BEGIN
DECLARE @code NVARCHAR(10)
SET @code='0000123456'
RETURN @code
END
调用该存储过程获取返回值如下:
DECLARE @code NVARCHAR(10)
EXEC @code = pr_Test
PRINT @code
结果却是:123456,不明白是什么原因?
------解决方案--------------------
你的问题是因为RETURN 返回的是INT类型,这个联机丛书上有说。
------解决方案--------------------
换output吧。
------解决方案--------------------
隐式转换成INT了