我有代码:
ALTER PROC sp_get_location
(
@partNumber VARCHAR (100),
@tempVar VARCHAR (100) OUTPUT
)
AS
BEGIN
SET @tempVar = STUFF((SELECT (', ' + location + ' (' + CAST(quantity AS VARCHAR (100)) + ')') FROM dbo.warehouse where part_number LIKE @partNumber FOR XML PATH ('')), 1, 1, '')
END
我称之为:
DECLARE @tempVar varchar (100)
EXEC dbo.sp_get_location @partNUmber = 'pn3', @tempVar
SELECT @tempVar
但我一直收到这样的错误:
消息119,级别15,状态1,行3必须通过参数编号2和 后续参数为' @name = value'。在表格' @name =之后 值'已经使用过,所有后续参数都必须在中传递 表格' @name = value'。
我已经搜索并尝试过在互联网上发布的大量内容,但我无法让代码运行。我做错了什么?
我正在 sql server 2005 中运行
答案 0 :(得分:3)
DECLARE @tempVar varchar (100)
EXEC dbo.sp_get_location @partNUmber = 'pn3', @tempVar = @tempVar output
SELECT @tempVar
答案 1 :(得分:1)
只需更换一行:
EXEC dbo.sp_get_location @partNUmber = 'pn3', @tempVar
with:
EXEC dbo.sp_get_location @partNUmber = 'pn3', @tempVar = @tempVar OUPUT