1. Coba gunakan pemrosesan transaksi untuk memperbarui database
Pemrosesan transaksi VB mencakup beberapa instruksi operasi database yang dimulai dengan BeginTrans dan diakhiri dengan CommitTrans atau Rollback. Selain memastikan integritas database, pemrosesan transaksi juga dapat meningkatkan efisiensi pembaruan batch database. Hal ini karena jika operasi pembaruan basis data tidak menggunakan pemrosesan transaksi, setiap operasi Pembaruan akan menyebabkan basis data ditulis ke disk satu kali. Setelah menggunakan pemrosesan transaksi, pembaruan hanya dilakukan di buffer memori, dan semua modifikasi ditulis kembali ke disk sekaligus saat CommitTrans dijalankan. Ada beberapa hal yang perlu diperhatikan saat menggunakan pemrosesan transaksi:
(1) Pemrosesan transaksi harus mempunyai mekanisme pengecekan kesalahan yang lengkap;
(2) Karena VB menggunakan kunci halaman pada database sebelum transaksi berakhir, dalam lingkungan multi-pengguna, jika transaksi ditangguhkan, pengguna lain tidak akan dapat mengakses data yang dikunci.
2. Coba gunakan dekomposisi kode untuk operasi pengambilan Pilih
Menggunakan Select untuk operasi database sederhana dan mudah digunakan, tetapi jika beberapa operasi pengambilan didekomposisi menjadi kode pengambilan manual yang setara, kecepatan pengambilan database akan sangat dipercepat. Metode dasar dekomposisi adalah dengan mengindeks bidang kunci pengambilan dan menggunakannya Carilah Setelah metode ditemukan, berdasarkan karakteristik yang diurutkan dari database yang diindeks, Pencarian traversal baris. Ketika rentang traversal tidak terlalu lebar, metode ini dapat meningkatkan kecepatan akses database puluhan kali lipat. Misalnya: Select*frompersonwherevol='123'andbirth=#11-02-73# didekomposisi menjadi operasi berikut. , kecepatan akses dapat ditingkatkan secara signifikan:
Tabel.Indeks=volTable.Seek=, 123ifnottable.nomatchthen
whilenottable.eof
iftable(vol)=123maka
table.movelast
elseiftable(Kelahiran)=#11-02-73#lalu
'Temukan catatan
endif
tabel.movenext
wendendif
3. Gunakan lampirkan untuk mengikat tabel database
Saat menggunakan ODBC untuk terhubung ke server database seperti MSSQLServer, Oracle dan Sysbase, kita dapat mengikat tabel di server ke database MSAcess melalui fungsi lampirkan MSAcess, karena database MSAcess dapat menyimpan cache struktur tabel di server database Ketika kita mengakses sumber data ODBC dapat meningkatkan kinerja akses sistem.
4. Gunakan opsi dbSQLPassThrough
Saat menghubungkan ke server database MSSQLServer, Oracle dan Sysbase, gunakan opsi dbSQLPassThrough untuk mengirim perintah langsung ke server database, sehingga mengurangi pemeriksaan dan interpretasi perintah middleware dan meningkatkan kinerja akses database. Contoh berikut menggunakan prosedur tersimpan untuk membuat Dynaset:
dimmydbasdatabasedimmydsasdynasetsetmydb=opendatabase(..........)'Buka database setmyds=mydb.openrecordset(nama, dbOpendynaset, dbSQLPassThrough,...)
Kerugian menggunakan dbSQLPassThrough adalah kumpulan data yang dikembalikan bersifat hanya-baca.
5. Gunakan tabel objek akses database dengan benar.
Mendukung perintah dan indeks SEEK. Kombinasi keduanya dapat menemukan catatan tercepat. Penulis pernah melakukan tes perbandingan kecepatan, dan membutuhkan waktu 3,5 detik untuk Tabel untuk mengambil 100.000 catatan, 9 detik untuk Dynaset, dan 10 detik untuk Dukungan Snapshot operasi baca dan tulis. Tidak Mendukung SORT dan FILTER, yang harus diganti dengan Indeks. Sesuai dengan tabel fisik dalam database, penambahan, penghapusan, dan modifikasi akan langsung mempengaruhi tabel database.
Dynaset. Objek database paling fleksibel. Mendukung operasi baca dan tulis dan merupakan subset dinamis dari catatan. Di ODBC, operasi tulis memerlukan pengaturan indeks unik. Ini mendukung SORT dan FILTER hanya bisa menggunakan Dynaset.
Snapshot. Hanya dapat dibaca tetapi tidak dapat ditulis, dan tidak dapat dikunci. Tidak mendukung metode Edit, Tambah Baru, dan Perbarui.
->