dao database

9
 DAO DATABASE Visual Basic 6.0 menyediakan 2 cara untuk mengakses database. Cara yang pertama adalah menggunakan komponen Data / DAO (Data Access Object). Komponen ini merupakan komponen lanjutan dari Visual Baric 5.0. DAO dapat digunakan untuk mengakses database access 97, foxpro 2.0 -3.0, paradox 3.x – 5.x, worksheet excel d an lotus, dbase.(III, IV, 5.0). Pe rl u di pe rh at ikan ba hwa untuk da ta ba se access, komponen in i ha nya mampu menggu nakan dat abase sampai dengan Mic ros oft Access 97. Jik a ing in menggu nakan da ta base Mi cr os of t Ac cess 2000 ke atas ma ka oleh Mi cr os of t disarankan untu k menggunakan komponed ADO. Komponen ADO merupakan cara yang kedua yang disediakan oleh Microsoft Visual Basic 6.0 untuk mengakses database. Dan pada komponen ini cara pengaksesan database menjadi  jauh lebih mudah dan sederhana karena kita tidak lagi perlu menggunakan perintah-perintah yang bertingkat untuk melakukan koneksi, menciptakan workspace dan sebagainya. Hal-hal seperti itu sudah disederhanakan oleh komponen ini, artinya apapun database yang akan diguna kan tid ak aka n men jadi mas ala h kar ena per int ah- per int ah yan g diguna kan pada komponen ADO akan sama saja untuk berbagai macam database tersebut. Pemakaian komponen DAO Pada Microsoft Visual Basic 6.0, komponen DAO secara default sudah ada di toolbox dengan tampilan seperti berikut ini Gambar 1.1 Icon DAO Unt uk men ggunakan komponen ter seb ut, lak uka nla h kli k gand a pada icon dao yan g terdapat pada toolbox sehingga muncul pada form seperti tampilan berikut ini Gambar 1.2 Komponen DAO Gambar 1.3 Komponen DAO di form Setelah itu untuk mengkoneksikan DAO, sebelum melangkah lebih lanjut ada beberapa  properti yang harus diperhatikan agar dalam membuat program dengan menggunakan kompone n ini tid ak mengal ami kes usa han . Per hat ika n tabel pro per ti komponen DAO  berikut ini. 1

Upload: boyutama

Post on 11-Jul-2015

113 views

Category:

Documents


0 download

TRANSCRIPT

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 1/8

 

DAO DATABASE

Visual Basic 6.0 menyediakan 2 cara untuk mengakses database. Cara yang pertama adalahmenggunakan komponen Data / DAO (Data Access Object). Komponen ini merupakan

komponen lanjutan dari Visual Baric 5.0. DAO dapat digunakan untuk mengakses databaseaccess 97, foxpro 2.0 -3.0, paradox 3.x – 5.x, worksheet excel dan lotus, dbase.(III, IV, 5.0).Perlu diperhatikan bahwa untuk database access, komponen ini hanya mampumenggunakan database sampai dengan Microsoft Access 97. Jika ingin menggunakandatabase Microsoft Access 2000 keatas maka oleh Microsoft disarankan untuk menggunakan komponed ADO.Komponen ADO merupakan cara yang kedua yang disediakan oleh Microsoft Visual Basic6.0 untuk mengakses database. Dan pada komponen ini cara pengaksesan database menjadi jauh lebih mudah dan sederhana karena kita tidak lagi perlu menggunakan perintah-perintahyang bertingkat untuk melakukan koneksi, menciptakan workspace dan sebagainya. Hal-halseperti itu sudah disederhanakan oleh komponen ini, artinya apapun database yang akan

digunakan tidak akan menjadi masalah karena perintah-perintah yang digunakan padakomponen ADO akan sama saja untuk berbagai macam database tersebut.

Pemakaian komponen DAOPada Microsoft Visual Basic 6.0, komponen DAO secara default sudah ada di toolboxdengan tampilan seperti berikut ini

Gambar 1.1 Icon DAO

Untuk menggunakan komponen tersebut, lakukanlah klik ganda pada icon dao yangterdapat pada toolbox sehingga muncul pada form seperti tampilan berikut ini

Gambar 1.2 Komponen DAO

Gambar 1.3 Komponen DAO di form

Setelah itu untuk mengkoneksikan DAO, sebelum melangkah lebih lanjut ada beberapa properti yang harus diperhatikan agar dalam membuat program dengan menggunakankomponen ini tidak mengalami kesusahan. Perhatikan tabel properti komponen DAO berikut ini.

1

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 2/8

 

Tabel Properti Komponen DAO

Properti Keterangan

AlignMenentukan pemerataan kontrol pada Form (0-None, 1- Top,

2 - Bottom, 3 - Left, 4 - Right)

BOFActionMenentukan metoda yang akan otomatis diaktifkan ketika

posisi pointer mencapai BOF (1 - MoveFirst, 0 - BOF)

Caption Menentukan tulisan pada data kontrol

AccessMenentukan jenis software file database (Access, dBaseIII,

dBaseIV, dll) sebagai sumber data

DatabaseNameMenentukan path dan nama database file yang akan

digunakan sebagai sumber data

DefaultCursorTypeMenentukan jenis kursor yang digunakan (0 - DefaultCursor, 1

- ODBCCursor, 2 - ServerSideCursor)

DefaultTypeMenentukan jenis data yang digunakan (2 - UseJext, 1 -

UseODBC)

EOFActionMenentukan metoda yang akan otomatis diaktifkan ketika

posisi pointer mencapai BOF (1 - MoveLast, 0 - EOF,2-AddNew)

ExclusiveMenentukan modus pengaktifan database secara Share atau

Exclusive (False, True)

ReadOnlyMenentukan apakah recordset adalah readonly atau tidak

(False, True)

RecordsetType Menentukan jenis recordset yang akan digunakan (1-Dynaset,0-Table, 2-Snapshot)

RecordSource

Menentukan sumber data untuk recordset, dapat berupa

nama tabel maupun bahasa SQL (khusus untuk Dynaset dan

Snapshot)

Secara default, untuk menggunakan komponen DAO properti yang harus di ubah nilainyaadalah : – Databasename – RecordSource

Setelah meletakan komponen data ke form, langkah selanjutnya adalah pastikan bahwa

 properti connect isinya adalah access.

Kemudian set properti databasename dengan melakukan klik pada icon berikut ini yangtampak pada isian

Gambar 1.4 : Icon untuk memilih dan mencari database pada properti databasename

Kemudian pilih database yang akan digunakan dengan menggunakan dialog box yangmuncul. Ingat, yang dapat dipakai untuk database access adalah access 97.

2

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 3/8

 

Gambar 1.5 : Dialog Box memilih database

Setelah dipilih maka tampilan properti window untuk komponen dao seperti berikut ini

Gambar 1.6 : Properti Window

Kemudian properti yang harus diubah nilainya selain databasename adalah

RecordSource. Nilai yang akan tampil di properti RecordSource adalah tabel yang terdapat pada database. Tinggal dipilih tabel mana yang dibutuhkan pada komponen ini. Berikut ini

adalah tampilan yang terdapat pada properti RecordSource

3

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 4/8

 

Gambar 1.7 : Memilih tabel yang akan dipakai pada properti RecordSource

Gambar 1.8 : Tabel yang sudah dipilih di properti RecordSource

Memahami Jenis RecordSetSelain RecordSource, properti yang harus diperhatikan adalah jenis Recordset karena jenis

Recordset jika digunakan untuk keperluan yang tepat akan mendukung performa dari

aplikasi yang dibuat.

Visual Basic menerima dan menampilkan record dari database dengan menggunakan objek Recordset. Recordset menampilkan record dari suatu Tabel atau record yang merupakanhasil Query (SQL). Ada tiga jenis recordset yang dapat ditentukan pada properti

4

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 5/8

 

RecordSetType pada data control, adapun ketiga jenis recordset tersebut adalah sebagai berikut :

Tabel Properti Recordset

Jenis Recordset Keterangan

Table Suatu himpunan dari record yang diambil dari suatu tabel tunggaldatabase. Anda dapat menambah, mengubah, atau menghapus

record pada jenis recordset ini.

Dynaset Suatu himpunan dari record secara dinamis yang di ambil dari

suatu tabel tunggal maupun hasil Query (SQL) dari satu atau lebih

 tabel. Anda dapat menambah, mengurangi, atau menghapus record

pada jenis recordset ini, dan perubahan akan mempengaruhi tabel

yang bersangkutan.

Snapshot Suatu himpunan dari record yang merupakan duplikasi secara

statis. Anda dapat menggunakan recordset jenis ini untuk mencari

data, dan membuat laporan. Recorset Snapshot dapat mengandung field dari satu atau lebih tabel yang tidak dapat di update.

Untuk memilih jenis Recordset yang ingin digunakan pada Property (RecordsetType), dannilai defaultnya adalah vbDynasetType.Catatan : Pada Dynaset dan Snapshot, recordset disimpan pada memori lokal, jika aplikasi andatidak menggambil data lebih dari satu tabel, ataupun sumber data non-ODBC, maka Recordset jenis Table merupakan pilihan yang baik dari segi kecepatan dan efisiensi pemakaian memori.

Metoda-metoda pada Data KontrolSebagaimana objek-objek standar lainnya, objek Data kontrol menyediakan berbagaimetoda yang dapat digunakan untuk mendukung program yang dibuat denganmenggunakan komponen tersebut.

Bergerak dalam RecordSet

Metoda Fungsi

MoveFirst Memindahkan keaktifan pointer ke awal recordset

MoveLast Memindahkan keaktifan pointer ke akhir recordset

MovePrevious Memindahkan keaktifan pointer ke record sebelumnya

MoveNext Memindahkan keaktifan pointer ke record berikutnya

Contoh :Data1.Recordset.MoveFirst

Mencari suatu record tertentua. Untuk RecordSet jenis Dynaset dan SnapShot

Metoda Fungsi

FindFirst kriteria Mencari dari ecord pertama yang memenuhi kriteria

FindLast kriteria Mencari dari record terakhir yang memenuhi kriteria

FindNext kriteria Mencari ke record berikutnya yang memenuhi kriteria

FindPrevious Kriteria Mencari ke record sebelumnya yang memenuhi kriteria

5

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 6/8

 

Contoh :Data1.Recordset.FindFirst "nama = 'Doraemon'"

b. Untuk RecordSet jenis Table

Pada recordset jenis table untuk pencarian dapat menggunakan metoda Seek, tetapisebelumnya perlu ditentukan dahulu pada saat pembuatan tabel, field mana yang menjadiindex dan field ini yang akan digunakan pada properti index di komponen data.Bentuk umumnya :

Data1.RecordSet.Index = NamaIndex 

Data1.RecordSet.Seek perbandingan, key1, key2, ...

Perbandingan Keterangan

"=" Sama dengan

">=" Lebih besar atau sama

">" Lebih besar  

"<=" Lebih kecil atau sama

"<" Lebih kecil

Contoh :Data1.Recordset.Index = "nama"Data1.Recordset.Seek "=","doraemon"

Memeriksa hasil pencarian recordSetelah proses pencarian dilakukan, maka hasil dari proses tersebut haruslah diperiksaapakah ditemukan atau tidak. Untuk itu, proses pemeriksaannya dapat menggunakan

 properti NoMatch baik untuk metoda Find maupun metoda Seek . Dimana arti dari properti NoMatch adalah tidak cocok ContohData1.Recordset.FindFirst "nama = 'doraemon'"

If Data1.Recordset.NoMatch ThenMsgBox "Peserta belum terdaftar !"

ElseMsgBox "Peserta telah terdaftar !"

End If

atau

Data1.Recordset.Index = "nama"Data1.Recordset.Seek "=","doraemon"

If Data1.Recordset.NoMatch ThenMsgBox "Peserta belum terdaftar !"

Else

MsgBox "Peserta telah terdaftar !"

End If

Menandai posisi recordUntuk menyimpan posisi record dapat menggunakan properti bookmark .

Contoh :Dim MyPosisi As Variant

MyPosisi = Data1.RecordSet.BookmarkData1.RecordSet.MoveFirst

Data1.RecordSet.Bookmark = MyBookMark

6

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 7/8

 

Mengambil nilai field dari record aktif Jika suatu kontrol di bound pada data kontrol, maka kontrol tersebut akan menampilkannilai field dari record yang sedang aktif. Untuk mengambil nilai field dari record yangsedang aktif secara koding atau menuliskannya pada code window, dapat menggunakan

salah satu cara berikut :

Data1.Recordset.Fields(0).Value ' Mengacu pada nilai pada field pertaman = 0 ' Mengacu tidak langsung dengan suatu field

number.Data1.Recordset.Fields(n) ' Mengacu pada nilai pada field pertama.Data1.Recordset.Fields("FName") ' Mengacu pada FName field.string$ = "FName" ' Mengacu tidak langsung dengan nama field.Data1.Recordset.Fields(string$) ' Mengacu pada FName fieldData1.Recordset("FName") ' Mengacu kepada field sebagai collection

default.

Data1.Recordset(n) ' Mengacu kepada field sebagai collectiondefault.

Contoh :Debug.Print Data1.Recordset("Email")

Mengubah nilai field dari record aktif Untuk mengubah nilai field dari record yang sedang aktif secara koding / penulisan program pada code window, lakukan langkah sebagai berikut :

1. Posisikan current record ke record yang akan diedit.2. Tentukan nilai baru kefield yang mau diubah

3. Gunakan method Update atau method Move, Find, atau Seek.Contoh :Data1.Recordset.Edit

Data1.Recordset("nama") = "Doraemon"...

Data1.RecordSet.Update

Menambah record baru ke recordsetUntuk menambahkan record baru ke dalam recordset, dapat digunakan properti EOFAction

untuk secara otomatis menambahkan record baru ketika posisi record pointer berada di

EOF, sehingga dapat dengan segera menyimpan data di tabel walaupun tidak menggunakan perintah. Cukup dengan melakukan seting pada properti EOFAction, maka proses tersebutsudah terlaksana.

Secara koding lakukan langkah berikut untuk menambahkan record baru ke recordset :

1. Membuat suatu record baru dengan method AddNew dimana Current record pointer disimpan dan berpindah ke record baru.

2. Tentukan nilai baru untuk record baru.

3. Simpan record baru dengan method Update.Contoh :Data1.Recordset.AddNewData1.Recordset("nama") = "Nobita"

...

Data1.RecordSet.Update

7

5/11/2018 Dao Database - slidepdf.com

http://slidepdf.com/reader/full/dao-database 8/8

 

Menghapus record yang sedang aktif Untuk menghapus seluruh record, posisikan ke record yang akan dihapus, dan gunakan

method Delete. Sesaat setelah record tersebut dihapus, maka record tersebut menjadi

invalid, sehingga harus menggunakan method MoveNext untuk memindahkan posisi

setelah setiap penghapusan.Contoh :Data1.Recordset.Delete

Data1.Recordset.MoveNext

If Data1.Recordset.Eof ThenData1.Recordset.MoveLast

End If

Melakukan refresh data pada RecordsetAnda dapat menggunakan metoda Refresh untuk menutup dan membentuk ulang isiRecordset.

Contoh :Data1.Refresh

Menutup suatu RecordsetMethod Close menutup recordset dan membebaskan resource yang dialokasikan padanya.Usaha untuk melakukan suatu metode atau akses pada element dari recordset yang telahterhapus akan menghasilkan kesalahan.Contoh :Data1.Recordset.Close

Database dan recordset akan secara otomatis tertutup ketika :1. Menggunakan method Close terhadap recordset tertentu.

2. Form yang mengandung data control di unload3. Program menjalankan statement End.

8