MySQL 是一個關系型數(shù)據(jù)庫管理系統(tǒng),它支持使用觸發(fā)器來自動執(zhí)行指定的函數(shù)或語句。嵌入式觸發(fā)器是指在一個 SQL 語句中定義的觸發(fā)器,它在執(zhí)行該語句時被觸發(fā)。
DELIMITER // CREATE TRIGGER my_trigger BEFORE INSERT ON my_table FOR EACH ROW BEGIN SET NEW.updated_at = NOW(); END// DELIMITER ;
這個示例定義了一個嵌入式觸發(fā)器,在每次插入數(shù)據(jù)時更新數(shù)據(jù)表中的 updated_at 字段。在觸發(fā)器內部使用了SET
命令來設置字段的值,NEW
關鍵字表示正在插入的新行數(shù)據(jù)。當執(zhí)行插入語句時,該觸發(fā)器會被自動觸發(fā)。
值得注意的是,DELIMITER
命令被用來改變語句分隔符,以便在觸發(fā)器定義中使用分號不會被視為語句的結束符。
嵌入式觸發(fā)器可以在 INSERT、UPDATE、DELETE 和 REPLACE 等語句中定義。使用它們可以方便地避免手動編寫一些重復性的操作,使數(shù)據(jù)庫的處理更加自動化和高效。
上一篇mysql屬性值自增