我要檢查表PREMIUM_SERVICE_USER
記錄是否存在 strClientID
更新timeValid
爲+30如果strClientID
插入到premium_service_user
表中沒有任何記錄。檢查是否存在記錄,如果是「更新」,如果沒有「插入」
我在做什麼錯?
它增加timeValid
爲+30天,但也插入另一行。
SELECT @pre_var = count(*)
FROM PREMIUM_SERVICE_USER
WHERE strClientID = @strClientID
/* bronze premium - 200 cash */
IF @Premium = 1
BEGIN
INSERT INTO PREMIUM_SERVICE_USER
(strClientID, timeReg, timeValid, bCurrent, durum)
VALUES
(@strClientID,getdate(),getdate() + 30,'1','1')
UPDATE TB_USER
SET cash = cash+200
WHERE strAccountID = @strClientID
END
IF @Premium = 1 AND @pre_var = 1
BEGIN
UPDATE PREMIUM_SERVICE_USER
SET timevalid = timevalid+30 where strClientID = @strClientID
UPDATE PREMIUM_SERVICE_USER
SET bCurrent = 1 where strClientID = @strClientID
UPDATE TB_USER
SET cash = cash+200 WHERE strAccountID = @strClientID
END
除了下面找到了修復,我也建議你結合UPDATE語句成PREMIUM_SERVICE_USER – 2010-07-06 19:58:33