Pas*_*ber 7 sql varchar stored-procedures return sql-server-2008
可能重复:
将nvarchar值'Internet Explorer 3 original'转换为数据类型int时转换失败
所以我创建了以下简单的存储过程:
CREATE PROCEDURE test
AS
BEGIN
RETURN 'works!'
END
GO
Run Code Online (Sandbox Code Playgroud)
然后,我想通过触发以下语句来执行它:
EXEC test
Run Code Online (Sandbox Code Playgroud)
为什么我一直收到以下错误?
转换varchar值'works!'时转换失败 到数据类型int.
哦,顺便说一句,(何时)是否有必要在存储过程结束时使用GO语句?我想它在这里没有任何效果,因为当我撤回我的@out字符串时它会跳出程序.
Ada*_*Dev 20
使用RETURN只允许您返回INTEGER代码
您需要选择值
CREATE PROCEDURE test
AS
BEGIN
SELECT 'works!'
END
Run Code Online (Sandbox Code Playgroud)
或者如果要在调用者中分配变量,请使用OUTPUT参数
CREATE PROCEDURE test
@outputVal VARCHAR(20) OUTPUT
AS
BEGIN
SET @outputVal = 'works!'
END
DECLARE @val VARCHAR(20)
EXECUTE test @val OUTPUT
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30101 次 |
| 最近记录: |