trigger exception commit yapmıyor
trigger exception commit yapmıyor
s.a
Triger icinde bir hata gonderince insert icinde yapılanlar commit olmuyor.
Position da sıralama yapıyorum
0 da insert table var
1 eğer şartlar tutuyorsa exception hataver var
ne olursa olsun triger Update position 0 da inser table (.... ) baska bir table birseyler yazıyorum.
ama position 1 exeption cıkarsa 0 daki insert commit olmuyor
bunu procedurle (triger icinden EXECUTE PROCEDURE ) denedim yine olmadı. ne yapmam lazım
teşekkür ederim.
Triger icinde bir hata gonderince insert icinde yapılanlar commit olmuyor.
Position da sıralama yapıyorum
0 da insert table var
1 eğer şartlar tutuyorsa exception hataver var
ne olursa olsun triger Update position 0 da inser table (.... ) baska bir table birseyler yazıyorum.
ama position 1 exeption cıkarsa 0 daki insert commit olmuyor
bunu procedurle (triger icinden EXECUTE PROCEDURE ) denedim yine olmadı. ne yapmam lazım
teşekkür ederim.
Re: trigger exception commit yapmıyor
yanlış hatırlamıyorsam trigger position 0 nezaman istersen yap demek eğer öncelik sırası kullanacaksan 1 den başlatıp bir dene
Kolay gele
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Re: trigger exception commit yapmıyor
onuda yaptım olmadı.
Olay commit den geçiyor abi,
exeption aldığı zaman commit gerçekleşmiyor bundan dolayı bir onceki triggerda insert table olduğu halde sonraki trigger da (position 2 de yani) transaction commit olmadığında yazamıyor.
Trigger icinde commit deme olsa cozulebilir gibi geldi bana
Olay commit den geçiyor abi,
exeption aldığı zaman commit gerçekleşmiyor bundan dolayı bir onceki triggerda insert table olduğu halde sonraki trigger da (position 2 de yani) transaction commit olmadığında yazamıyor.
Trigger icinde commit deme olsa cozulebilir gibi geldi bana
Re: trigger exception commit yapmıyor
exeption gördüğü yerde commit etmez o işlem yarım bırakılır, sen ilk trigger da hata verdirtip ona göre işlem yaptırmayı istiyorsan bunu delphi tarafında yapabilirsin. Zaten bana delphi tarafındada exception la program yönlendirmek hep arabayı duvara vurarak hedefe yönlendirmeye benzemiştir
Kolay gele
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Re: trigger exception commit yapmıyor
abi,
yarım bırakmıyor yarım bıraksa işim çözülür. önceki trigerdakilerinde commit olmasını engelliyor.
bunu delphi de yapmamam ille triger icinde yapmam gerekiyor.
teşekkür ederim.
yarım bırakmıyor yarım bıraksa işim çözülür. önceki trigerdakilerinde commit olmasını engelliyor.
bunu delphi de yapmamam ille triger icinde yapmam gerekiyor.
teşekkür ederim.
Re: trigger exception commit yapmıyor
Trigger demek olayın içi demek. Dolaysıyla oradaki bir exception doğal olarak, tutarlılık açısından olayı başırılı bir şekilde sonlandırmaya engeldir. Tasarımı bu şekilde kurgulamak lazım. Yoksa hata veren kısım ayrılıp diğer kısım çalıştırılıp commit lendikten sonra da stored procedure ile yapılabilir diye düşünüyorum.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Re: trigger exception commit yapmıyor
yarımdan kastettiğimde oydu ben yanlış yazdım, işlem gerçekleştirilmez. Sen bi tam olarak ne yapmaya çalıştığını yaz. 1. triggerda ne yapıyorsun, yani kodlarını yaz field tiplerini yaz bizde burdan amiral battı oynamayalım
trigger yada SP içinde yada FB içindeki herhangi bir işlem yani transaction açıldığından itibaren yapılan nekadar işlem varsa herhangi birisinden hata oluşursa, transaction içinde yapılmış tüm işlemler iptal edilir.
Kolay gele
trigger yada SP içinde yada FB içindeki herhangi bir işlem yani transaction açıldığından itibaren yapılan nekadar işlem varsa herhangi birisinden hata oluşursa, transaction içinde yapılmış tüm işlemler iptal edilir.
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Re: trigger exception commit yapmıyor
amiral battı
abi,
Yaptıgım işlem şu.
table benim istemedim bir şart ile update yapmak istenmiş ise bunu logunu tutup bu olaya müsade etmemek.
=======================
update new triger oluşturup position 1 diyorum ve
----
SELECT gelen from gelenTable
WHERE id=23
into : prcn;
if(prcn!='Oldu' )
THEN
BEGIN
INSERT INTO PLOG
(ISLEM,ZAMAN,FISNO,ISLEM_TARIHI,KOD,ACIKLAMA,KULLANICI,) values
('IZINSIZ','now',OLD.FISNO,OLD.FIS_TARIHI,OLD.KOD,'Gecersiz bir işlem yapıldı ve buna müsade edilmedi',old.USER);
end
=========================
ikinci tiriger oluşturdum yine
update new triger oluşturup position 2 diyorum ve
---
SELECT gelen from gelenTable
WHERE id=23
into : prcn;
if(prcn!='Oldu' )
THEN EXCEPTION guvenlik_hatasi;
birinci tigerde sorguluyor ve şarta uymaz ise insert ediyorum logomu ikinci tigerdada hata verdiyorum ki bu işleme musade etmesin ama hata yani excepiton verince ilk tigerda insert olmuyor.
abi,
Yaptıgım işlem şu.
table benim istemedim bir şart ile update yapmak istenmiş ise bunu logunu tutup bu olaya müsade etmemek.
=======================
update new triger oluşturup position 1 diyorum ve
----
SELECT gelen from gelenTable
WHERE id=23
into : prcn;
if(prcn!='Oldu' )
THEN
BEGIN
INSERT INTO PLOG
(ISLEM,ZAMAN,FISNO,ISLEM_TARIHI,KOD,ACIKLAMA,KULLANICI,) values
('IZINSIZ','now',OLD.FISNO,OLD.FIS_TARIHI,OLD.KOD,'Gecersiz bir işlem yapıldı ve buna müsade edilmedi',old.USER);
end
=========================
ikinci tiriger oluşturdum yine
update new triger oluşturup position 2 diyorum ve
---
SELECT gelen from gelenTable
WHERE id=23
into : prcn;
if(prcn!='Oldu' )
THEN EXCEPTION guvenlik_hatasi;
birinci tigerde sorguluyor ve şarta uymaz ise insert ediyorum logomu ikinci tigerdada hata verdiyorum ki bu işleme musade etmesin ama hata yani excepiton verince ilk tigerda insert olmuyor.
Re: trigger exception commit yapmıyor
anahtar kelime "TRANSACTION START ve/veya SET TRANSACTION" firebird help lerinde araştır db içinde transaction kullanımı. benim hiç ihtiyacım olmadı, ama senin yapmak istediğinde kesinlikle gerekli. işlemi db tarafında iptal edeceksen, işlemi iptal etmeden önce içinde olduğun transactiondan başka bi transaction açıp işlermleri yapıp onu commit edip kapatıp, exception raise ettiğinde diğer ilk işlem tamam iptal edilir ama unutma o transaction da açıktır yayıntı yapmasın rollback et
kolay gele
kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!