Merhabalar arkadaşlar bir proje üzerinde çalışıyorum ve aklıma takılan bir olay oldu hemen sorayım dedim.
tablolarımda ( stok tablosuna giriş ve çıkış işlemleri gibi. ) çeşitli işlemler var. Ben yapı olarak satıs tablosundan bir satış yapıldığında stoktan düşecek bu işlemi yapan bir SP hazırladım ve satış tablosunun After Insert Trigger'ında bu procedure'u çalıştırıyorum.
Sormak istediğim ise SP deki kodu Trigger'a aktarsam ve SP ortadan kaldırsam performansta bir değişiklik olurmu? avantajı ve dezavantajı varmıdır?
Tavsiye ve Düşünceleriniz bekliyorum.
Saygılarımla
İsmail YILDIRIM
Mrb; bu aslında performansı etkilemese bile uygun tasarımı ilgilendiren bir olaydır. Eğer bir işlem bir Trigger'ın çalıştırmasını gerektiriyorsa bu durumda Trigger yazmak gerekir. Bu işlem prosedürle bile aynı performansta sonuç verse bile. Prosedürler genelde toplu bir işlemi bir arada yapabilmek veya belirli verilen bilgilere göre sonuç almak için kullanılır. Aslında sorunuzdan anladığıma göre prosedür ve tetikleyici yazma zamanlarını kavramış olduğunuz . Eğer belirttiğiniz işlem tetikleyici içinden çalıştırılması gerekiyorsa ve size çok büyük bir iş yükü getirmiyorsa tasarımızı değiştirin fakat yükü ağır olacaksa değişikliği şimdilik tavsiye etmem. Kolay gelsin.
Şaban Şahin AKMAN
_________________ Derin olan kuyu değil kısa olan iptir. - .
Eğer başka yerlerden de aynı kod SP çağırılıyorsa modulerlik SP kalmasında fayda var. Aksi halde işi uzatmadan trigger de halletmen daha mantıklı. Tespitlerden çıkan sonuca göre SP içinden SP çağırmak doğrudan yazılabilir bir sorgu için perfomans kaybına sebep oluyor