dml Tetikleyicileri anlama
Microsoft SQL Server provides two primary mechanisms for enforcing business rules and data integrity: kısıtlamaları ve tetikleyiciler.A trigger is a special type of stored procedure that automatically takes effect when a language event executes.SQL Server includes three general types of triggers: dml Tetikleyiciler ddl Tetikleyiciler ve tetikleyici oturum açma.
ddl Tetikleyicileri çağrıldığı zaman veri tanımılama dili (ddl) olay yerinde sunucu veya veritabanı alır.Daha ayrıntılı olarak açıklandığı ddl tetikleyici.Oturum açma Tetikleyiciler ateşlenmesine saklı yordamlar yanıt olarak bir oturum açma olay.Bu olay, kullanıcı oturum ile örnek oluşturulduğunda oluşturulur SQL Server.Daha fazla bilgi için bkz: Oturum açma Tetikleyicileri.
dml Tetikleyicileri çağrıldığı zaman bir veri işleme dili (dml) olay veritabanında yer alır.Belirtilen tablo veya görünümde verileri değiştirme INSERT, update veya delete deyimi dml olayları içerir.DML tetikleyicisi diğer tabloları sorgulayabilir ve karmaşık içerebilir Transact-SQL deyimleri.Tetikleyici ve onu harekete deyim geri gelen tetikleyici içinde alınabilmesi tek bir işlem olarak kabul edilir.Ciddi bir hata (örneğin, yetersiz disk alanı) algılanırsa, işlemin tamamı otomatik olarak geri alınır.
dml Tetikleyiciler yararları şunlardır:
Bunlar ilgili tablolarda değişiklikleri veritabanında basamaklı; Ancak, bu değişiklikleri geçişli başvurusal daha verimli bir şekilde kullanarak çalıştırılabilir bütünlük kısıtlamaları.
Bunlar kötü ya da yanlış INSERT, update ve delete işlemleri karşı koruma ve daha karmaşık Kontrol kısıtlamaları ile tanımlanan diğer kısıtlamaları zorlamak.
Denetim kısıtlamalarının tersine, dml Tetikleyiciler diğer tablolardaki sütunlara başvurabilir.Örneğin, bir select başka bir tetikleyici kullanabilirsiniz tablo için eklenen veya güncelleştirilen verileri karşılaştırmak ve ek eylemler gerçekleştirmek gibi verileri değiştirmek veya kullanıcı tanımlı bir hata iletisi görüntüler.
Bunlar, önce ve sonra bir veri değişikliği tablo durumunu değerlendirmek ve bu fark temel eylemleri.
Aynı türden (INSERT, update veya delete) üzerinde birden çok dml tetikleyici bir tablo farklı eylemlerini aynı değişikliği açıklamasına yanıt, birden fazla olanak sağlar.