SQL Server存储过程:运行时请求参数

时间:2015-12-10 11:16:22

标签: sql-server tsql

我有以下存储过程:

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中。

但是当我执行存储过程时,出现以下错误

  

Msg 201,Niveau 16,État4,ProcédureSigleEnseigne,Ligne 89
  Laprocédureoufonction'SigleEnseigne'参加了leparamètre' @Sigle ',qui n'apasétéfourni。

它向我询问参数@Sigle,但它包含了我的存储过程中所需的一切。

更新:我正在执行这样的代码

EXEC SigleEnseigne

有人可以开导我吗?

由于

1 个答案:

答案 0 :(得分:5)

在使用所有参数作为输出的过程中,您应该在调用proc

时设置这些参数
O(6)