触发器是一个数据库对象,当指定数据操作语言操作发生时(触发事件),该对象可以自动执行一个或多个 SQL 语句(触发操作)。您可以在一个表上定义一个或多个触发器以便在 SELECT、INSERT、UPDATE 或 DELETE 触发事件发生之后进行操作。
图: 系统目录表中存储的触发器信息
sysprocedures 系统目录表标识只可以作为触发器操作调用的触发器例程。
sysmaster 数据库的内存驻留表指示表或视图是否具有触发器。
只要发出 SELECT、INSERT、UPDATE 或 DELETE 语句,数据库服务器就会查看语句是否为可以激活 DML 在其上操作的表或列(或者视图)的触发器的触发事件。如果语句需要激活触发器,那么数据库服务器将在触发事件之前、期间或之后从 systrigbody 表检索触发操作的语句文本并运行触发 DML 语句或 SPL 例程。对于视图上的 INSTEAD OF 触发器,数据库服务器执行触发操作而不是触发事件。