Arsip: Kenapa Firebird tidak AutoCommit ????

 
user image
more 18 years ago

Manz

[MODE MATE_LISTRIK=ON] Dear all,.... sekarang gw mo nanya nih ... Gw buat program aplikasi dengan menggunakan grid dari devex, kemudian pake komponen tIBTable, tDataSource, tIBDatabase dan tIBTransactions nya. TDataSource tersebut di link seperti biasa ke tIBTable dan ke grid. tIBTransaction1.AutoStopAction := saCommit; tIBTransaction1.DefaultAction := TACommit; Kenapa data yang gw masukkin di grid tersebut tidak autocommit ???? :shock: kenapa bisa bilang tidak autocommit, karena kalo saya liat di databasenya masih underflying di memory. Sebelum aplikasi saya tutup, data tersebut muntjul di grid, tapi kalo saya liat di databasenya ora ono, ketjuali kalo aplikasi tersebut saya application.terminate baru data tersebut di commit ke database, alias kalo diliat di databasenya baru muntjul. Kan ini bisa repod kalo pas mate listrik, data belon commit ke database.... Tulung tuluung ...... :cry: saya pake firebird-2.0.0.12724-0-win32, trus ama BDS 2006 Archi Sorry neraningnnya enjelimet ... karena bohlam gw putus dan gak ada lintrik ... eh ... listrik.
user image
more 18 years ago

centos

@manz_delphi: [MODE MATE_LISTRIK=ON] Dear all,.... sekarang gw mo nanya nih ... Gw buat program aplikasi dengan menggunakan grid dari devex, kemudian pake komponen tIBTable, tDataSource, tIBDatabase dan tIBTransactions nya. TDataSource tersebut di link seperti biasa ke tIBTable dan ke grid. tIBTransaction1.AutoStopAction := saCommit; tIBTransaction1.DefaultAction := TACommit; Kenapa data yang gw masukkin di grid tersebut tidak autocommit ???? :shock: kenapa bisa bilang tidak autocommit, karena kalo saya liat di databasenya masih underflying di memory. Sebelum aplikasi saya tutup, data tersebut muntjul di grid, tapi kalo saya liat di databasenya ora ono, ketjuali kalo aplikasi tersebut saya application.terminate baru data tersebut di commit ke database, alias kalo diliat di databasenya baru muntjul. Kan ini bisa repod kalo pas mate listrik, data belon commit ke database.... Tulung tuluung ...... :cry: saya pake firebird-2.0.0.12724-0-win32, trus ama BDS 2006 Archi Sorry neraningnnya enjelimet ... karena bohlam gw putus dan gak ada lintrik ... eh ... listrik.
Transaction di Firebird memang tidak auto commit. Feature auto commit ada di data access-nya (IBX, IBObjects, FIBPlus, dll). Untuk IBX set TIBTransaction.AutoStopAction dengan nilai selain saNone, saya tidak menggunakan IBX mungkin keliru, coba di cek ulang. Transaction harus di akhiri secepat-cepatnya. Ada beberapa data access (3rd party) di Delphi yang support pemisahan Transaction untuk read dan write. Kalau mungkin jangan menggunakan TIBTable karena sama dengan SELECT * FROM <table>. HTH
user image
more 18 years ago

Manz

@centos berkata: Untuk IBX set TIBTransaction.AutoStopAction dengan nilai selain saNone
Lha .... wong nulis kayak ini
@Daku Berkata: tIBTransaction1.AutoStopAction := saCommit;
user image
more 18 years ago

centos

@manz_delphi: [quote:457e70dfcf="centos berkata"] Untuk IBX set TIBTransaction.AutoStopAction dengan nilai selain saNone [/quote:457e70dfcf] Lha .... wong nulis kayak ini
@Daku Berkata: tIBTransaction1.AutoStopAction := saCommit;
Oops sorry.... mungkin masih ngantuk :(
user image
more 18 years ago

Manz

[MODE ANGKAT=ON] :cry: belon dapet solusinya yang tepat .... hiks... hiks... hiks....
user image
more 18 years ago

herux

Kalo menggunakan firebird sangat tidak disarankan pake komponen TIB karena itu didesign untuk interbase, i pernah baca cuma lupa dimana !!! he he ..
user image
more 18 years ago

Manz

jadi sarannya pake apaan donx :cry:
user image
more 18 years ago

simba

TIB untuk FB 1.5.x masih bisa sangat compatible, untuk FB 2.0.x kayaknya juga masih cukup compatible. Mungkin untuk beberapa option/behavior yg spesifik akan ada beberapa perbedaan. Betul saran herux, kalo masih akan terus menggunakan FB, mending dihindari pake TIB. Kalo saya, krn udah sadar kalo nantinya FB dan IB akan semakin gak kompatible, saya gak lagi menggunakan TIB untuk akses ke FB, tapi menggunakan dbExpress. dbExpress relatif lebih aman krn kita bisa punya banyak "kebebasan", mulai menentukan parameter koneksi, nama client library (gak harus gds32.dll), dan bisa menjalankan query2 khusus dari TSQLQuery seperti commit, rollback retaining, dlsb. Sejauh ini belom ada masalah menggunakan dbExpress untuk konek ke FB 2.0. Kalo mau lebih aman lagi, pake komponen2 yg jelas2 menyatakan support ke FB 2.0, gak sekedar cuman bisa kompatibel doang, seperti Zeos atau IBO.
user image
more 18 years ago

jrp

Kalau dilihat dari nama property: AutoStopAction : tindakan yg dilakukan jika transaksi yg sedang berjalan harus diakhiri secara 'terpaksa', misalnya saat anda menutup aplikasi. DefaultAction : tindakan yg dilakukan jika timer pada dataset tercapai. Jadi, kedua property tersebut kurang berhubungan dengan auto commit yg anda inginkan (langsung commit/commit retaining tepat setelah post). Solusi: 1. Siapa tahu ada property sejenis pada dataset IBX (query/table)? Kalau datasetnya MDO punya property AutoCommit. Saya di warnet, jadi tdk bisa lihat propertynya TIBTable :D 2. Gunakan saja event AfterPost pada table untuk melakukan commit semi otomatis IBTransaction1.Commit; IBTable1.Open; Saran: Gunakan MDO atau Zeos saja. NB. Saya sama sekali belum pernah pakai IBX, tapi sering menggunakan MDO (yg katanya mirip IBX). jrp
user image
more 18 years ago

herux

hati2 penggunaan property Commit.. apalagi diletakan di event afterpost karena jika tidak tepat penggunaanya akan mengganggu transaksi yg lain. Saudara jrp apakah sudah menemukan bug pada komponen MDO ?? seperti yg terjadi pada IBX jika saya menggunakan database firebird dan saya buat suatu aplikasi master detail dengan property cacheupdate = true; maka post pada tbl_detail tidak masuk yg masuk hanya data entry di tbl_master saja ...tapi jika saya menggunakan database interbase baik dg mengunkan komponen MDO maupun IBX kedua entry masuk dengan lancar. kesimpulan : 1.itu artinya bahwa komponen MDO masih mengcopy persis source code dari IBX !! (Saya belom tahu MDO versi yg baru tapi yg terakhir saya coba MDO rc-2) . 2. Komponen IBX tidak kompatibel dan tidak disarankan untuk Firebird !!!
more ...
  • Pages:
  • 1
  • 2
  • 3
Share to

AI Forward

🚀 We're thrilled to partner with Alibaba Cloud for "AI Forward - Alibaba Cloud Global Developer Summit 2025" in Jakarta! Join us and explore the future of AI. Register now: https://int.alibabacloud.com/m/1000400772/
#AlibabaCloud #DeveloperSummit #Jakarta #AIFORWARD

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com