İç içe iki transaction bloğu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
habikus
Üye
Mesajlar: 69
Kayıt: 14 Eyl 2011 04:23

İç içe iki transaction bloğu

Mesaj gönderen habikus »

Kayit Düzelt butonunu tıklayınca kayıt düzeltme işlemini önce eski kaydı silip daha sonra ekrandaki bilgileri yeni kayıt ekleyerek yapıyorum.

Bu işlemi transaction commit rooolbak bloğunu içinde hallediyorum.

Fakat ilk önce olan silme işlemini de ayrı bir procedure olarak yapıyorum ve bu procedure için de de ayrı bir transaction commit rooolbak bloğu var.

Sormak istediğim işlem kesilme esnasında dışdaki transaction roolback yapınca aradaki transaction da roolback yapmıyor.

Yani işlem kesilince asıl kayıt silinmiş oluyor. Düzelteyim derken asıl kaydı silmiş oluyorum. İki işlemi de roolback yapamaz mıyım?
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: İç içe iki transaction bloğu

Mesaj gönderen SimaWB »

Bence eski kaydı silme işlemini en sona bırakmalısınız. Yeni kayıt ekleme işi başarılı olursa eskisini silin.
There's no place like 127.0.0.1
habikus
Üye
Mesajlar: 69
Kayıt: 14 Eyl 2011 04:23

Re: İç içe iki transaction bloğu

Mesaj gönderen habikus »

Çözüm olarak iç içe iki transaction kullanmadan yani tek transaction commit rollback bloğü ile hallettim. Ama sizin söylediğiniz silme işlemini sona bırakmak da çok mantıklı geldi. Onu da uygulamaya koyacağım inşallah. İlginize teşekkürler.
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: İç içe iki transaction bloğu

Mesaj gönderen thelvaci »

Kayıt düzeltme işlemi için silme ve ekleme !! yapılacak en kötü şey. Neden sadece update kullanmıyorsunuz ? Ayrıca belirtmek isterim ki kaç tane aktif transaction olursa olsun bir rollback tüm transaction'ları geri alır.
Cevapla