请问ALTER TRIGGER是在事件完成后触发吗?也就是说,如果我做一个操作,可能会有延时的情况下。(假设:insert into 一条记录)我在表中定议一个ALTER TRIGGER触发器,是不是保证在insert into事件执行完成后才触发的呢?如果不是的话,那如果需要在一个事件完全完成后触发的触发器应该怎么写。谢谢!

解决方案 »

  1.   

    after 吧?alter trigger 是修改触发器AFTER指定触发器只有在触发 SQL 语句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束检查也必须成功完成后,才能执行此触发器。
      

  2.   

    触发器有多种:
    想for insert(after insert),instead of insert
    其实他们的作用完全可以通过字面上的意思来理解到
    for(after):就是当insert操作正确执行后要进入到触发器内部来执行操作
    instead of :就是用触发器内部的操作来代替insert的操作
      

  3.   

    楼上两位解释了after触发器的执行,必须提到的是,虽然after触发器的执行是在insert into语句执行成功后执行,但是触发器和insert into语句包含在同一个事务中,如果触发器执行过程产生错误,将会回滚事务,这样insert into语句的执行将以其被回滚。