首批通过分布式安全可靠测评,为关键业务系统打造
概述
更新时间:2025-05-28 15:35:15
OceanBase 数据库 MySQL 模式兼容 MySQL 5.6 的触发器。触发器是与表相关的数据库对象,并在表发生特定事件时被激活。
触发器可以在语句插入、更新或删除关联表中的行时被激活。例如,您可以通过 INSERT 或 LOAD DATA 语句插入行,并且每插入一行就会激活一次 INSERT 触发器。如果批量插入两行数据,则会触发两次触发器。
触发器可以设置为在触发事件之前或之后激活。例如,您可以在插入表的每一行之前或在更新的每一行之后激活触发器。
OceanBase 数据库 MySQL 模式当前主要支持以下类型的触发器:
INSERT型触发器:表示插入某一行时激活触发器,可以通过INSERT、LOAD DATA、REPLACE语句触发。UPDATE型触发器:表示更改某一行时激活触发器,可以通过UPDATE语句触发。DELETE型触发器:删除某一行时激活触发器,可以通过DELETE、REPLACE语句触发。
比较特殊的是 INSERT INTO ... ON DUPLICATE KEY UPDATE 语句,每个行都会激活一个 BEFORE INSERT 触发器,接着是 AFTER INSERT 触发器或者 BEFORE UPDATE 与 AFTER UPDATE 触发器,是 AFTER INSERT 触发器还是 BEFORE UPDATE 与 AFTER UPDATE 触发器主要取决于行是否有重复的键。