SQL | Tetikleyici Nedir? Ne Zaman Kullanılır? Türleri Nelerdir?

SQL | Tetikleyici Nedir? Ne Zaman Kullanılır? Türleri Nelerdir? Merhaba sevgili okurlar, SQL dersi ile bu makalede yanında olacağız ve konumuz Tetikleyici, yazılışı biraz tuhaf olan ve bazılarının duymadığı bir terim olan Tetikleyiciyi önce açıklayalım ve ne süre kullanıldığını belirterek kısaca türlerinin neler olduğunu madde başlıkları biçiminde değinelim. Tetikleyici (trigger), SQL Server üstünde herhangi bir işlem gerçekleştiğinde başka bir işlemin tetiklenmesi için kullanılır. Tetiklenecek işlem tamamıyla bizim belirlediğimiz çerçevede öbür bir kayıt eklemek, rapor almak yahut genel anlamda kontrol mekanizmaları oluşturmak için kullanılabilir. Tetikleyici, bir çeşit özel Stored Procedure’dür. Bir kaydın eklenmesi (INSERT), silinmesi (DELETE) yahut değiştirilmesi (UPDATE) durumlarında otomatik şekilde devreye girecektir. Tetikleyiciler, Query ekranında T-SQL kodu ile yada Management Studio ile oluşturulup yönetilebilirler. Tetikleyiciler, görünümler (View) ve tablolar üzerinde tanımlanabilir. SQL Server 2005, DDL (Data Defination Language) tetikleyicileri adında yeni bir kavramı destekler. DDL tetikleyiciler, hadise gerçekleştikten sonra değil de CREATE, ALTER ve DROP benzeri DDL ifadeleri için tanımlanırlar. Pekii Tetikleyici Ne Zaman Kullanılır? Çeşitli amaçlara uygun şekilde tetikleyiciler kullanılabilir. Bu amaçlar; * Değişiklikleri takip etmek, * Birincil anahtar üretmek, * Karmaşık meslek kurallarını gerçekleştirmek, * E-posta atmak benzeri olayları otomatik şekilde yapmak, * Standart hata mesajlarının dışında bir hata mesajı elde etmek, * Veritabanı erişimlerini takip edebilmek, * Nesnede meydana gelebilecek değişiklikleri takip ve engellemektir. Bu arada sizlere Tetikleyiciyi Ateşleyen Olaylar’dan da bahsedeyim, önünüze çıkabilir… Bir işlemin gerçekleşmesini ya da gerçekleşmeye başlamasını oluşturucu ateşleyebilir. Tetikleyiciyi ateşleyen bir işlem ile karşılaşıldığında oluşturucu ile işlem bir blokta ele alınır. Bu blok, RAM’de bulunan geçici bellek bloğudur. Tetikleyiciyi çağıran işlemi onaylamak yönünde hiç bir işlem yapmayabilir ya da işlem başarılı olmadığında işlemi geçersiz kılabilir. Tetikleyici çalıştığı süre Inserted ve Deleted ismi verilen düzmece tabloları kullanır. Bu tablolar tetikleyicinin ateşlendiği tabloyla eşdeğer alanlara sahiptir. Bunlar da mantıksal olarak RAM’de bulunur. Asıl tabloya bir kayıt eklendiğinde ve oluşturucu ateşlendiğinde bu kayıt Inserted tablosuna da eklenir. Tablodan bir kayıt silindiğinde silinen kayıt Deleted sahte tablosuna da eklenir. Update işlemi ise evvela silme (Delete) ve ardından bir kayıt ekleme (Insert) şekilde ele alınır. Bir kayıt güncellendiğinde asıl kayıt Deleted sahte tablosuna, değişen kayıt da Inserted düzmece tablosuna yazılır. Inserted ve Deleted düzmece tabloları RAM’deki bellek alanında elde edilir. Bundan dolayı, TRUNCATE TABLE benzeri yazılmayan tablolara yansımayan değişiklikler tetikleyici tarafından yakalanamaz.Tetikleyiciler dışarıdan parametre almazlar. Ancak, düzmece tablolar yardımı ile son işlemden etkilenmekte olan kayıtlar tetkik edilebilir. Tetikleyici Türleri Nelerdir? SQL Server’da iki türlü tür oluşturucu vardır. Bunlar After ve Instead Of tetikleyicileridir. ** After Tetikleyicileri ** Instead Of Tetikleyicileri ——————————————————————————– Tetikleyici Türlerinin açıklamasını ve nasıl Tetikleyici oluşturulduğunu bir sonra ki makalemde yazacağım…


Yapılan Yorumlar
Erdem OFLAZ

Bir mum, diğer mumu tutuşturmakla ışığından bir şey kaybetmez.
 Kategoriler
 Popüler yazılar