我有以下存储过程:
CREATE PROCEDURE SigleEnseigne @Sigle VARCHAR(150) OUTPUT , @Enseigne VARCHAR(150) OUTPUT , @SigleEnseigne1 VARCHAR(150) OUTPUT AS BEGIN SELECT TOP 1 @Sigle = ISNULL(John_Jack.Sigle, '') , @Enseigne = ISNULL(John_Jack.Enseigne, '') , @SigleEnseigne1 = CASE WHEN Code_Juridique LIKE 'M%' THEN ' / ' + ISNULL(John_Jack.Enseigne, '') WHEN ISNULL(John_Jack.Sigle, '') = '' AND ISNULL(John_Jack.Enseigne, '') = '' THEN '' ELSE @Sigle + ' / ' + @Enseigne END FROM John_Jack END GO
我已经能够创建它,感谢这里的帮助,在SO中.
但是,当我执行存储过程时,我收到以下错误
消息201,Niveau 16,4参谋部,程序SigleEnseigne,利涅89
拉过程OU fonction 'SigleEnseigne'出席乐paramètre ' @Sigle ',魁n'a PAS ETE弗尔尼拉.
它问我一个参数@Sigle
,但它包含了我的存储过程中所需的一切.
更新:我正在执行这样的代码
EXEC SigleEnseigne
有人可以开导我吗?
谢谢
在使用所有参数作为输出的过程中,您应该在调用proc时设置这些参数
declare @Sigle VARCHAR(150), @Enseigne VARCHAR(150), @SigleEnseigne1 VARCHAR(150) EXEC SigleEnseigne @Sigle OUTPUT, @Enseigne OUTPUT, @SigleEnseigne1 OUTPUT