Tek Transaction ile Master Detail Kayıt

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
delphist
Üye
Mesajlar: 595
Kayıt: 05 Oca 2005 04:34

Tek Transaction ile Master Detail Kayıt

Mesaj gönderen delphist »

S.a. Arkadaşlar bu mümkün mü. Çünkü tablolar arasında constraint olduğu için detail kayıt fk. ve masterdaki pk alan post olmadıktan sonra detail kaydı girmek mümkün değil. Bende burda şöyle bir yol izliyorum ama detail kayıtta herhangi bir problem olduğu zaman bu sefer master kayıt kalıyor....

yani master ve detail için ayrı transaction kullanmak zorunda kalıyorum. Bunu aşmanın bir yolu var mı...Teşekkürler
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Master ve Detay taboları aynı transaction'a bağlayabilirsin. Detay kayıtta problem olduğunda Transaction'ı Rollback ederek Master kayda Post ettiğin değerden geri dönebilirsin. Bunun için master kayda post ettikten sonra commit etmemen gerekiyor.

Algoritmanı şu şekilde kurabilirsin:

Master kaydı doldur.
Master kaydı Post et.

Detay kaydı doldur.
Detay kaydı post et.
Eğer detay kaydı post etme esnasında hata olursa Transaction'ı Rollback yap.
Kullanıcı avatarı
delphist
Üye
Mesajlar: 595
Kayıt: 05 Oca 2005 04:34

Mesaj gönderen delphist »

:) Ben Commit etmeden tabloda olmayacağını düşünerek 2 transactina bağlıyordum teeşkkür ederim...Şimdi oldu.. :)
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Post gönderdiğinde o transaction'da kayıtlıdır. Ancak commit etmediğin için başka bir transaction'da kayıtlı değil gibi görünür.
Kullanıcı avatarı
delphist
Üye
Mesajlar: 595
Kayıt: 05 Oca 2005 04:34

Mesaj gönderen delphist »

@coderlord cevabın için teşekkür ederim.. :)
Cevapla