我正在使用SQL Server Management Studio,并尝试将“订单”表更新后的触发器设置为“gift_id”列值为“NULL”,其中同一行“reservation_id “列的值将是 ”0 <“ 或NOT NULL”SQL Server Management Studio - 更新后更新案例
较短的解释 - 。如果行 “reservation_id”= NOT NULL然后设置 “gift_id”= NULL
内我都拿出了这一点,但我不能得到这个触发器正确。有人可以给我一个提示吗?
CREATE TRIGGER add_reservation
ON [dbo].[order]
AFTER UPDATE
AS BEGIN
UPDATE [dbo].[order]
CASE
WHEN [reservation_id] > 0
THEN SET [gift_id] = NULL
END
END
GO
似乎有一个语法错误:
Msg 156, Level 15, State 1, Procedure add_reservation, Line 6
Incorrect syntax near the keyword 'CASE'.
'CASE'在T-SQL是一个**表达**(像'a + b'),它只能返回一个单一的原子值** - 它并不意味着控制程序流或类似的东西.... –