MySQL 8.4 Release Notes
27.3 使用触发器
触发器是一种命名的数据库对象,它与一个表相关联,并在该表上发生特定事件时激活。触发器的一些用途是对要插入到表中的值进行检查或对更新操作中的值进行计算。
触发器可以定义为在表中插入、更新或删除行时激活。这些行操作是触发器事件。例如,可以使用INSERT
或LOAD DATA
语句插入行,触发器在每个插入的行上激活。触发器可以设置为在触发器事件前或后激活。例如,可以在每个插入到表中的行上激活触发器或在每个更新的行上激活触发器。
Important
MySQL 触发器仅在通过 SQL 语句对表进行更改时激活。这包括对基础表的更改,这些表是可更新的视图的基础。触发器不激活由不传输 SQL 语句到 MySQL 服务器的 API 进行的更改。这意味着触发器不激活使用NDB
API 进行的更新。
触发器不激活INFORMATION_SCHEMA
或performance_schema
表的更改。这些表实际上是视图,触发器不能在视图上激活。
以下部分描述了创建和删除触发器的语法,展示了如何使用它们,并指出了获取触发器元数据的方法。
-
您可能会在使用触发器时找到MySQL 用户论坛有帮助。
-
关于 MySQL 触发器的常见问题,请查看Section A.5, “MySQL 8.4 FAQ: Triggers”。
-
触发器有一些使用限制;请查看Section 27.8, “Restrictions on Stored Programs”。
-
触发器的二进制日志记录按照Section 27.7, “Stored Program Binary Logging”中描述的方式进行。