Herkese merhaba,
"can't update table in stored function trigger because it is already used by statement which invoked this stored function trigger. " bir prosedür oluşturdum kayıttaki bir alanı 1 olarak update ediyor bu prosedürü trigerla tetikledim ama kaydı update ederken bu hatayı veriyor...
Çözümü bilen, duyan, gören var mıdır bi soriim dedim...
triger hatası
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: triger hatası
acaba tablo kendinimi tetikleyemiyor mesela kayıt değişince bu kayıt değiştirildiğini belirtmek üzere degisim kolonunu 0 ken 1 yapıyorum
Re: triger hatası
ama orda sonsuz döngüye giriyor anladığım kadarıyla düşününce kayıt update olunca program tarafından bide triger tetiklenip yine bi update çalışıyo tabi kafası karışıyor haliyle
neyse trigerla değilde iyisi mi ben kodla çözeyim bunu...
ama yinede çözümü bilen varsa söylerse çok memnun olurum
neyse trigerla değilde iyisi mi ben kodla çözeyim bunu...
ama yinede çözümü bilen varsa söylerse çok memnun olurum
Re: triger hatası
s.a.
hangi veritabanını kullanıyorsunuz belirtmemişsiniz (yada ben göremedim)
eğer fb kullanıyorsanız hangi trigeri kullanıyorsunu.
beforeinsert?
afterinsert?
belkide new ve old cursorları işinizi görür.
kolay gelsin.
hangi veritabanını kullanıyorsunuz belirtmemişsiniz (yada ben göremedim)
eğer fb kullanıyorsanız hangi trigeri kullanıyorsunu.
beforeinsert?
afterinsert?
belkide new ve old cursorları işinizi görür.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Re: triger hatası
Sanırım table in degişikliği durumunda çalışması gereken trigger yazmışsınız, fakat bu trigger da aynı table i degiştiriyor, sonra table değişince trigger yine çagrılacak, sonra trigger table degiştirecek vs vs . Sonsuz bir döngü gibi bir duruma neden olabileceği için firebird bu duruma izin vermiyor.
Anlatımda karışıklık olmasın diye ekleme yapıyorum:
Bir trigger ile kendi tablei degiştirebilirsin, ama kendini çagıracak şekilde düzenleme yapamazsın.
Triggeri update için yazdın diyeiim, trigger için update aynitable .... şeklinde sql kullanmazsın. Onun yerine dogrudan fieldları degişirirsin. fieldsehir = 'ANKARA' gibi. Eğer önceki bilgilerle karşılaştırma yapman gerekirse, old ve new u kullanırsın. Trigger içinde aynı table için update veya insert komutlarını kullanamazsın.
Anlatımda karışıklık olmasın diye ekleme yapıyorum:
Bir trigger ile kendi tablei degiştirebilirsin, ama kendini çagıracak şekilde düzenleme yapamazsın.
Triggeri update için yazdın diyeiim, trigger için update aynitable .... şeklinde sql kullanmazsın. Onun yerine dogrudan fieldları degişirirsin. fieldsehir = 'ANKARA' gibi. Eğer önceki bilgilerle karşılaştırma yapman gerekirse, old ve new u kullanırsın. Trigger içinde aynı table için update veya insert komutlarını kullanamazsın.
Re: triger hatası
a.s .
cevaplarınız için teşekkür ederim
aslangeri arkadaşım valla doğru söylüyosun sorumda hiç belirtmemişim sanki herke biliyor bütün gece bunla uğraştığımı mysql 5.1 veritabanı kodda after update inde çalışacaktı
emin_as arkadaşım "Triggeri update için yazdın diyeiim, trigger için update aynitable .... şeklinde sql kullanmazsın. Onun yerine dogrudan fieldları degişirirsin. fieldsehir = 'ANKARA' gibi. Eğer önceki bilgilerle karşılaştırma yapman gerekirse, old ve new u kullanırsın. Trigger içinde aynı table için update veya insert komutlarını kullanamazsın." demişsin benimde yaptığım aynı table için update ti
kodla hallettim neyseki query nin before post olayında guncelleme alanını 1 yap dedim çalıştı ama mantıklı mı tartışılır
cevaplarınız için teşekkür ederim
aslangeri arkadaşım valla doğru söylüyosun sorumda hiç belirtmemişim sanki herke biliyor bütün gece bunla uğraştığımı mysql 5.1 veritabanı kodda after update inde çalışacaktı
emin_as arkadaşım "Triggeri update için yazdın diyeiim, trigger için update aynitable .... şeklinde sql kullanmazsın. Onun yerine dogrudan fieldları degişirirsin. fieldsehir = 'ANKARA' gibi. Eğer önceki bilgilerle karşılaştırma yapman gerekirse, old ve new u kullanırsın. Trigger içinde aynı table için update veya insert komutlarını kullanamazsın." demişsin benimde yaptığım aynı table için update ti
kodla hallettim neyseki query nin before post olayında guncelleme alanını 1 yap dedim çalıştı ama mantıklı mı tartışılır