我有一個存儲過程(SS2008),它需要一對intid,並且需要在添加記錄之前查看它們是否存在於表中。我有一個int輸出參數,我想返回並設置它的值基於什麼occrured。到目前爲止,我有這個,但它總是返回1.有人能指出我正確的方向嗎?SQL IF ELSE輸出參數存儲過程幫助
BEGIN TRY
IF EXISTS
(
SELECT * FROM tbMap WHERE (cId= @CId)
)
SET @result = -1; -- This C User is already mapped
ELSE IF EXISTS
(
SELECT * FROM tbMap WHERE (dId = @DId)
)
SET @result = -2; -- This D User is already mapped
ELSE
INSERT INTO tbMap (
Login
, Email
, UserName
, CId
, DId)
SELECT
@UserName
, usr.EmailAddress
, usr.UserName
, @CId
, @DId
FROM tbUser usr WHERE usr.iUserID = @DId
SET @result = 1;
RETURN
結束Try
我缺少什麼?感謝您的任何提示。
歡呼聲中,在聖地亞哥
工作完美。謝謝! – Hcabnettek 2010-04-22 15:51:10