trigger içinden trigger çalıştırmak

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
NewMember
Üye
Mesajlar: 990
Kayıt: 29 Haz 2005 06:57
Konum: Bursa

trigger içinden trigger çalıştırmak

Mesaj gönderen NewMember »

trigger içinden trigger çalıştırmak için nasıl bir kod yazmalıyız.

Kod: Tümünü seç

execute cariler_update_after;
denedim ama olmadı.
Teşekkürler...
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Re: trigger içinden trigger çalıştırmak

Mesaj gönderen vkamadan »

Merhaba ,
Trigger içinden Trigger çalıştıramazsınız zaten budurumda trigger ın kullanım amacı dışına çıkılmış olur, trigger lar sadece yazıldıkları tablonun insert,delete,update AFTER / BEFORE zamanlarında çalışabilirler,
Fakat trigger içinden Stored Procedure çağırabilirsiniz , sizin çağırmak istediğiniz trigger ın yapısını Stored Procedure e alıp ilgili SP yi çağırmanız doğru olacaktır.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Re: trigger içinden trigger çalıştırmak

Mesaj gönderen rsimsek »

Volkan kardeşimin dediği gibi TRIGGER ler sadece insert,delete, update AFTER / BEFORE tetiklemelerinde çalışırlar. Anladığım kadarıyla diğer bir TRIGGER içindeki yapılanları da uygulamak istiyorsunuz. O zaman o triggerin içeriğini bir Stored Procedure (SP) yazıp ilgili parametreleri SP içine gönderebilir, EXECUTE edebilirsiniz. Böylece trigger tetiklendiğinde istediğinizi yapar, siz de birinci trigger de yine aynı şekilde bu SP yi gerekli parametrelerle çalıştırabilirsiniz.

TRIGGER içinden;

Kod: Tümünü seç

  EXECUTE PROCEDURE SP_TOPLA(NEW.ALAN1, NEW.ALAN2, OLD.ALAN3);
gibi.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
NewMember
Üye
Mesajlar: 990
Kayıt: 29 Haz 2005 06:57
Konum: Bursa

Re: trigger içinden trigger çalıştırmak

Mesaj gönderen NewMember »

Arkadaşlar ikinize de teşekkür ederim.Sorunu tavsiye ettiğiniz şekilde çözdüm.....
Cevapla