触发器 (Visual Database Tools)
可视化数据库工具支持 DML 触发器。 在数据库中发生数据操作语言 (Data Manipulation Language, DML) 事件时将调用 DML 触发器。 DML 事件包含对指定表或视图中的数据进行修改的 INSERT、UPDATE 或 DELETE 语句。 DML 触发器可以查询其他表,而且可以包含复杂的 Transact-SQL 语句。 触发器和激发它的语句同被视为一个事务,可以从触发器内部回滚。 如果检测到严重错误(例如,磁盘空间不足),整个事务将自动回滚。
相关项
DML 触发器的优点如下:
触发器可以通过数据库中的相关表进行级联更改;不过,使用级联引用完整性约束可以更有效地执行这些更改。
触发器可以预防恶意或错误的 INSERT、UPDATE 和 DELETE 操作,并强制执行比 CHECK 约束中定义的限制更复杂的限制。
与 CHECK 约束不同的是,DML 触发器可以引用其他表中的列。 例如,触发器可以从其他表中使用 SELECT 来比较插入或更新的数据并执行更多操作,如修改数据或显示用户定义的错误消息。
触发器可以评估表在修改数据前后的状态,并根据状态的变化来执行操作。
若表上有多个类型相同的 DML 触发器(INSERT、UPDATE 或 DELETE),则可以执行多个不同的操作以响应同一修改语句。