Naprawdę rzadko używam wyzwalaczy. Więc spotkałem problem za pierwszym razem. Mam dużo tabel z wyzwalaczami (2 lub więcej na każdy stół). Chciałbym poznać i zmienić kolejność wyzwalania wyzwalaczy dla każdego stołu. Czy można uzyskać te informacje?
DODANY:
Oto dobry artykuł na temat mssqltips , które znalazłem.
IIRC nie można dokładnie zagwarantować kolejności, która wyzwala (z taką samą definicją, na co i kiedy zareagować) wystrzelić dla danej akcji przeciwko stole, dla dowolnej liczby wyzwalaczy.
Możesz jednak, jeśli są trzy lub mniej, ponieważ możesz użyć sp_settriggerorder, aby ustawić pierwszy na pierwszy, ostatni na ostatni, a środkowy na „niezdefiniowany” porządek.
Jeśli Twoje wyzwalacze są wrażliwe na kolejność, która jest wykonywana w ten sposób, często oznacza to, że twój projekt staje się bardziej złożony niż to konieczne (zwykle z powodu wzrostu organicznego) i może skorzystać z pewnego refaktoryzacji.
źródło
źródło
exec sp_settriggerorder @triggername = 'tr_xxx' , @order = 'Last' , @stmttype= 'DELETE'
możemy zobaczyć wynik („X”) w wyniku zapytania Jacksona. Dzięki, Jackson.