23.3 使用触发器

触发器是与 table 相关联的命名数据库对象,并在 table 发生特定事件时激活。触发器的某些用途是执行对要插入 table 中的值的检查,或对更新中涉及的值进行计算。

定义触发器以在语句插入,更新或删除关联 table 中的行时激活。这些行操作是触发事件。例如,可以通过INSERTLOAD DATA语句插入行,并为每个插入的行激活插入触发器。可以将触发器设置为在触发事件之前或之后激活。例如,您可以在插入 table 的每一行之前或在更新的每一行之后激活触发器。

Important

MySQL 触发器仅针对 SQL 语句对 table 所做的更改激活。这包括对可更新视图基础的基 table 的更改。对于不会将 SQL 语句传输到 MySQL 服务器的 API 所做的 table 更改,触发器不会激活。这意味着使用NDB API 进行的更新不会激活触发器。

INFORMATION_SCHEMAperformance_schematable 中的更改不会激活触发器。这些 table 实际上是视图,并且不允许在视图上使用触发器。

以下各节描述了创建和删除触发器的语法,显示了一些使用它们的示例,并指出了如何获取触发器元数据。

Additional Resources