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
  IBDatabase Hakkında adelphiforumz 7 186 Dün, Saat: 19:25
Son Yorum: mcuyan
  Merkez Bankası Döviz Kurları Hakkında adelphiforumz 6 129 14-04-2018, Saat: 14:44
Son Yorum: Cyber
  Unidac,Firedac,DbExpress,Ado,MyDac narkotik 4 224 07-04-2018, Saat: 09:23
Son Yorum: malitutuncu
  Ext file hakkında seci20 5 232 05-04-2018, Saat: 12:25
Son Yorum: uparlayan
  [ÇÖZÜLDÜ] Google Calendar API Server tipi Erişim Metodu hakkında tecrübesi olan mrmarman 38 938 26-03-2018, Saat: 10:22
Son Yorum: klavye



Konuyu Okuyanlar: 1 Ziyaretçi