Oturum açma tetikleyici yürütme yönergeleri

Bu konuda, oturum açma tetikleyici Açmadığınızda sırasını belirtme ve oturum açma tetikleyici içinde hareketlerini yönetme yönergeleri açıklanır.

İlk ve son tetikleyici belirtme

Birden çok tetikleyici oturum açma olay olarak tanımlanabilir.Any one of these triggers can be designated the first or last trigger to be fired on an event by using the sp_settriggerorder system stored procedure.SQL Server does not guarantee the execution order of the remaining triggers.Daha fazla bilgi için bkz: Tasarlama ve uygulama yapılandırılmış depolama (veritabanı altyapısı).

Hareketlerini yönetme

Önce SQL Server bir oturum açma tetikleyici harekete SQL Server oluşturur bir örtük işlem tüm kullanıcı hareket. bağımsızBu nedenle, ilk oturum açma tetikleyici, tetikleme başlatır hareket sayısı 1'dir.Oturum açma tetikleyici yürütme tamamladıktan sonra hareketi tamamlar.Başka türde tetikleyiciler gibi SQL Server bir oturum açma tetikleyici bir hareket sayısı 0 ile yürütmesi tamamlandığında, bir hata döndürür.deyim içinde iç içe geçmiş bir hareketi verilen bile rollback İŞLEMİNİ deyim hareket sayısı, sıfırlar.HAREKET TAMAMLAMA işlem sayısı 0 azaltma.Bu nedenle, oturum açma tetikleyici içindeki hareket TAMAMLAMA ifadelerden veren karşı öneri.

rollback İŞLEMİNİ kullanırken aşağıdakileri dikkate alın deyim oturum açma tetikleyici içinde:

  • En fazla geri alma noktası işlem yapılan veri değişiklikleri geri alınır.Geçerli tetikleyiciyi ve aynı olay üzerinde yürütülen önceki Tetikleyiciler tarafından yapılan tarafından yapılan bu değişiklikler içerir.Belirli bir olay için geri kalan tüm tetikleyiciler yürütülür.

  • Geçerli tetikleyici rollback deyim sonra görünen tüm geri kalan ifadeler yürütmek devam eder.Bu ifadeler birini verileri değiştirirseniz, değişiklikler geri alınır değil.

Bir kullanıcı oturumu oluşturulur bir oturum açma olay üzerinde tetikleyici yürütme sırasında aşağıdaki koşullardan herhangi biri gerçekleşirse:

  • Özgün örtük işlem geri alınır veya başarısız olur.

  • Tetikleyici gövdesi içinde önem 20'den büyük olan bir hata ortaya çıkar.