触发器分为事前触发和事后触发,这两种触发有何区别?语句级触发和行级触发有何区别
发布网友
发布时间:2022-04-27 07:03
我来回答
共1个回答
热心网友
时间:2023-09-13 02:14
【考点】触发器的事前触发和事后触发知识。
【出现频率】★★☆☆☆【解答】事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。
语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。
【分析】简单而言,事前触发主要是验证一些条件或进行一些准备工作,在表保存之前就触发,而事后触发则是进行收尾工作,保证事务的完整性,在表经过修改以后才触发。行级触发器是对DML语句影响的每个行执行一次,如UPDATE语句影响多行,就会对每行都激活一次触发器。而语句级触发器是对每个DML语句执行一次,如INSERT语句在表中即使插入了100多行,表上的INSERT语句级触发器也只会执行一次。