sqlserver中创建的存储过程,存储过程中定义的output参数在执行时提示错误???

output定义的参数是不是在进行时写法是: exec pr_output; 还是 exec pr_output @num; 应该怎么写????求大神指点啊。。。。。
最新回答
残喘

2024-09-10 01:34:49

--给NUMB加上默认参数就可以不用代参数执行存储过程了,这样:
create procedure pr_output
@numb nvarchar(20)=N'' OUTPUT
AS
BEGIN
SET @NUMB='ZHANGSAN'
END
GO
EXEC pr_output
但是,你这个过程不带参数,起什么作用呢?所以,还是带参数才能得到输出结果。这样:
DECLARE @NUMB VARCHAR(10)
EXEC pr_output @NUMB OUTPUT
SELECT @NUMB
拿着试卷唱忐忑

2024-09-10 11:18:54

这才是执行吧
上边create时不需要定义output

declare
@numb nvarchar(20)
exec pr_output @numb output
print @numb
没纸就用手抠

2024-09-10 09:13:58

你应该把 execute pr_output 改成 executepr_output @num output