我堅持創建 SQL 觸發器,publishingDate當Published當前行的欄位變為真時更新。我嘗試了多種宣告變體,但每次都出現語法錯誤。谷歌搜索沒有給出當前案例的關鍵。希望,你能幫忙。我的代碼如下。我使用的驗證器:https : //ru.rakko.tools/tools/36/
delimiter !
CREATE TRIGGER `vc`.`Articles_Updated_trigger`
BEFORE UPDATE
ON `Articles` FOR EACH ROW
BEGIN
IF new.Published = TRUE
SET new.PublishingdDate = CURRENT_TIMESTAMP
END IF;
END !
uj5u.com熱心網友回復:
如果要獲取狀態更改的所有行,則需要比較 OLD 和 NEW 以檢測更改
delimiter $$
CREATE TRIGGER `vc`.`Articles_Updated_trigger`
BEFORE UPDATE
ON `Articles` FOR EACH ROW
BEGIN
IF OLD.Published = FALSE AND NEW.Published = TRUE THEN
SET new.PublishingdDate = CURRENT_TIMESTAMP;
END IF;
END$$
DELIMITER ;
uj5u.com熱心網友回復:
CREATE [ OR ALTER ] TRIGGER [ schema_name . ]trigger_name
ON { table | view }
[ WITH <dml_trigger_option> [ ,...n ] ]
{ FOR | AFTER | INSTEAD OF }
{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
[ WITH APPEND ]
[ NOT FOR REPLICATION ]
AS { sql_statement [ ; ] [ ,...n ] | EXTERNAL NAME <method specifier [ ; ] > }
<dml_trigger_option> ::=
[ ENCRYPTION ]
[ EXECUTE AS Clause ]
<method_specifier> ::=
assembly_name.class_name.method_name
使用此語法創建觸發器并嘗試下一個方面。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/343759.html
上一篇:按條件連接表
