【发布时间】:2015-12-10 19:55:25
【问题描述】:
我有以下存储过程:
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
感谢这里的帮助,我已经能够创建它。
但是,当我执行存储过程时,出现以下错误
Msg 201、Niveau 16、État 4、Procédure SigleEnseigne、Ligne 89
La procédure ou fonction 'SigleEnseigne' 参加 le paramètre '@Sigle', qui n'a pas étéfourni。
它要求我提供参数@Sigle,但它包含我的存储过程中所需的一切。
更新:我正在执行这样的代码
EXEC SigleEnseigne
谁能给我指点一下?
谢谢
【问题讨论】:
-
你能把代码粘贴到你实际执行存储过程的地方吗?
-
嗨@Dane:查看我的更新
-
啊...也许您需要将变量默认为空(“”),就好像您对不存在的记录执行 isnull 然后它为空一样。
-
@AndyK,我回答了你之前的问题,你似乎使用了我的查询,但没有接受答案。我已经在评论中回答了这个问题。你为什么要问一个新问题?
-
真@GiorgiNakeuri。谢谢。很多问题都在徘徊,这就是为什么
标签: sql-server tsql