Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Firedac bileşenleri hakkında
#1
Merhabalar,
Veritabanı:firebird.
delphi tarafında daha önceleri ib bileşenleri kullanırken, delphi versiyonunu yükseltince firedac bileşenlerini kullanmaya başladım.

ib bileşenleri bağlantı şeklim;
ibdatabase <- ibtransaction <- ibquery ->ibupdatesql şeklindeydi. ibquery'nin afterpost vb olaylarında transaction commit-rollback yapıyordum.

Firedac bileşenlerini bu yapıya göre kullanmaya başladım, ancak biraz kurcaladığımda;
  • fdconnection nesnesine direk commit yapılabildiğini gördüm.
  • Daha önce Transaction bileşeninde ayarladığım isolation seviyesinin fdconnection bileşeninde de olduğunu gördüm.
Eğer şu tarz bir yapı kullanılmayacaksa, transaction bileşeni kullanmak gereksiz mi?
try
FDTransaction1.StartTransaction;
a tablosuna kaydet;
b tablosuna kaydet;
FDTransaction1.CommitRetaining;
except
FDTransaction1.RollbackRetaining
end;

FdConnection bileşeninde iki tane transaction (+UpdateTransaction) bağlama property'si mevcut, forma iki tane transaction koyup bağlamalı mı? Transaction.commit kullanılmasa da bu bileşenler arka planda çalışıyorlar mı?


Ayrıca;
  • query nesnesinin, updatesql bağlı olmadan da kalıcı kayıt yapabildiğini gördüm.
Query bileşeni (updatesql olmadan) kalıcı kayıt yapabildiğine göre, updatesql bileşenini artık query bileşenine bağlamaya gerek kalmadı mı?

Yukarıdaki soruları da dikkate alarak, firedac bileşenlerinin doğru bağlantı ve kullanım şekli hakkında bilgi verebilirseniz memnun olurum.
Cevapla
#2
Kendi yorumumu yazayım;
Transaction bileşeninin, örnekteki kod yapısı kullanılmayacaksa projeye dahil edilmeyebileceğini,
Query bileşeninin ise güçlendirildiğini, ibdataset ve ibquerynin birleşimi gibi kullanılabileceğini, böylece kayıt yapabilmek için query'nin updatesql bileşenine ihtiyacı kalmadığını düşünüyorum.

Kendi projemde ise, iki transaction bileşeni ekledim, normal olanın readonly özelliğini true yaptım, Commit işlemlerimi yine transaction bileşeni üzerinden yapacağım, updatesql bileşenini ise kullanmayı düşünmüyorum.
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Shocked Çoklu Dil Desteği Hakkında SercanTEK 10 304 28-08-2018, Saat: 13:24
Son Yorum: uparlayan
Exclamation Derleyici Direktifleri Hakkında, yhackup 8 3.224 22-08-2018, Saat: 19:52
Son Yorum: boreas
  Uses Kullanım Hakkında hi_selamlar 2 174 02-08-2018, Saat: 23:42
Son Yorum: hi_selamlar
  Chart1 kullanımı hakkında cinarbil 2 171 31-07-2018, Saat: 12:31
Son Yorum: cinarbil
  TDevBroadcastDeviceInterface hakkında. seci20 4 232 30-07-2018, Saat: 09:08
Son Yorum: Tuğrul HELVACI



Konuyu Okuyanlar: 1 Ziyaretçi