Arsip: Soal TAdoTable... share dikit....

 
user image
more 16 years ago

juan81

Nah para jagoan2 delphi saya mau tanya.... misal saya ada komponen Barang : TAdoTable... kalo saya mau insert tabel / append tabel kan perintahnya : Barang.open; Barang.append; Barang.fieldbyname('kodebarang').asstring:='0001'; Barang.fieldbyname('namabarang').asstring:='Coba coba'; Barang.post Barang.close; nah yang terjadi keanehaan.. kalo record barang masih di kondisi 1-50k record.. masih gak berat.. ^^... nahhh yang beratnya di posisi 400k++ record... ^^ error gak error tapi lambatnya udah ketemu saya tracing Barang.open; <--------- disini terjadi kelambatan.. (kira2 3 - 5 detik saya pake proc core2duo) kan aneh?? saya Tracing pake Query profiler ternyata perinta open = 'Select * from barang' kekekke.... Barang.append; Barang.fieldbyname('kodebarang').asstring:='0001'; Barang.fieldbyname('namabarang').asstring:='Coba coba'; Barang.post Barang.close; saya udah ganti pake Procec Query... dan tidak terjadi kelambatan apapun... q1.close; q1.sql.clear; q1.sql.add('Insert into barang values('0001','Coba coba')'); q1.exesql; yang saya tanyakan ada kah cari lain saya tetap memakai komponent TAdoTable... tanpa memakai TAdoQuery.. ^^ saya berpikir juga udah itu barang.open; ditaroh d form show.. dan barang.close di taro di form close; tapiiii sering tejadi kesalahan data.. karena komponen tersbut di taro di form datamodul yang di share keseluruh form dan di pake juga di form2 lain... beri penjelasan donk jagoan2 delphi?
user image
more 16 years ago

juan81

waduhh... gak ada yang reply... >,<......
user image
more 16 years ago

simba

Hare gene masih pake table? :D Wong solusinya juga udah jelas, yaitu pake query. Trus apa masalahnya? :P
user image
more 16 years ago

zieborg

@simba: Hare gene masih pake table?
Setujuuu..., masalah table lagi nih, itu baru 400k records, klo recordnya 4 juta masih mau pake table????? ngga deh...
user image
more 16 years ago

juan81

wwkkwkwkw.. santai bro.. kalo jelas2 itu gak isa di pake... kenapa di keluarkan TAdotable sama delphinya... ^^... kwkwkwk... 4 jt record... wow... terus menurut kamu apa gunanya TAdoTable terus??
user image
more 16 years ago

simba

TTable (entah BDE, ADO, dbExpress, atau lainnya) lebih cenderung untuk menjaga backward compatibilty dgn program2 lama, yg masih pake table. Kalo kita baca help, Delphi sendiri gak menyarankan menggunakan TTable untuk akses data, terutama untuk table yg isinya banyak. Buktinya kalo metode table udah ditinggalkan? Kau udah liat sendiri kan, trace eksekusi TTable ternyata menggunakan query juga. :P Knp skrg disarankan pake query? Krn lebih efisien dan efektif, baik dalam coding maupun dalam implementasi. Sekali lagi, kau liat sendiri buktinya, query lebih cepat drpd table. ;)
user image
more 16 years ago

ivan

Yup Se-7 sama Om @simba, contoh sederhana kelebihan Query dari pada table TABLE: -------- - Untuk input, edit, delete data Table harus di OPEN terlebih dahulu baru di eksekusi (Sudah memakan waktu untuk OPEN Table) Query: -------- - Tidak perlu melakukan OPEN, cukup dengan memasukan perintah SQL lalu ExecSQL dan data sudah diproses
user image
more 16 years ago

deLogic

Tambahan: Sewaktu Open Table, selain memakan waktu, juga cenderung memakan resource karena data di-FETCH / di-retrieve, kecuali dia ada fasilitas semacam OpenNoFetch. CMIIW.
user image
more 16 years ago

juan81

iya bener.... de logic dan simba bilang... udah gua tracing sendri procedure open milik TAdotabel. isinya Select from tablename di propertis tadotable.... bener juga fetch.... @ivan saya juga udah tau soal query dan table itu gunanya apa... yang saya bilang kenapa procedure open lambat banget.... iya bener walau aku pake Query isinya select from barang terus query itu di open... lambat banget juga... ^^... jadi masalah bukan di component Tablenya ternyata di fetch kebanyakan data... Terima kasih atas penjelasannya semua....
more ...
  • Pages:
  • 1
Share to

Random Topic

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