While browsing the MSDN library about the behaviour of triggers with rollback transaction commands i found the following: german msdn documentation july 2006 - link: ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.de/tsqlref9/html/6882c5bc-ff74-476a-984b-164aeb036c66.htm which means that nested triggers will not be executed after a rollback command within the trigger. when trying the following example: alter trigger tins on a after insert as raiserror('tins!', 16, 1) rollback transaction update a set x = 0 go alter trigger tupd on a after update as raiserror('tupd!', 16, 1) go insert into a values(3,4) the output is the following: Meldung 50000, Ebene 16, Status 1, Prozedur tins, Zeile 2 tins! Meldung 50000, Ebene 16, Status 1, Prozedur tupd, Zeile 2 tupd! which isnt really what we expected. Bug ? or Documenation Bug ?