Koneksi Visual Basic Dan Database Microsoft Access
Basis Data (database) merupakan kumpulan dari data yang saling berhubungan satu
dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat
lunak untuk memanipulasinya. Database merupakan salah satu komponen yang penting
dalam sistem informasi, karena merupakan basis dalam menyediakan informasi bagi para
user. Penerapan database dalam sistem informasi disebut dengan database system. Sistem
basis data adalah suatu sistem informasi yang mengintegrasikan kumpulan dari data yang
saling berhubungan satu dengan yang lainnya dan membuatnya tersedia untuk beberapa
aplikasi yang bermacam-macam di dalam suatu organisasi pendekatan database. Untuk
menghasilkan sebuah data base, suatu data mempunyai jenjang atau tahapan prosesnya,
dimulai dari karakter-karakter (characters), item data (field), record dan kemudian
database. Jenjang ini dapat digambarkan sebagai berikut:
Field suatu field menggambarkan suatu atribut dari record yang
menunjukkan suatu item data, seperti misalkan nim, nama, kelas dan lain sebagainya.
Kumpulan field membentuk suatu record
Record kumpulan dari field membentuk suatu record. Record menggambarkan
suatu unit data individu yang tertentu. Kumpulan record membentuk suatu file.
file kumpulan dari field membentuk suatu record. Record menggambarkan
suatu unit data individu yang tertentu. Kumpulan record membentuk suatu file.
Database kumpulan dari file membentuk suatu database
Perancangan program pada Visual Basic 6.0
Visual basic digunakan sebagai penghubung antara user dengan database serta
memberikan antarmuka yang lebih menarik pada user dalam mengakses suatu sistem
informasi database, sehingga dapat mempermudah user dalam mengakses suatu data yang
diperlukan.
Penggunaan komponen ADODC (Microsoft ADO data Control)
Setelah melakukan koneksi melalui fasilitas Microsoft Jet 4.0 OLEDB, user tinggal
memilih database yang ingin dikoneksikan (*.mdb)
File database
(*.mdb)
Pada properti komponen, kita dapat mengakses tabel dalam database secara langsung
untuk kemudian terhubung dengan properti datagrid ataupun bisa mengakses melalui
sintaks Query untuk menyeleksi data tertentu pada database yang terhubung.
List table yang ada
dalam database
Sintaks dalam
bahasa query
Praktikkum 1 ( mencoba Koneksi VB Database Access )
Percobaan Pertama, kita akan membuat sebuah database sederhana dengan nama
mahasiswa, kemudian simpan dengan nama file mahasiswa.mdb , dalam database tersebut
anda buat sebuah tabel dengan nama mata_kuliah konfigurasi sebagai berikut :
nomor mata kuliah merupakan primary key.
Buatlah sebuah form pada Visual Basic, dengan konfigurasi sebagai berikut :
KOMPONEN PROPERTY NILAI
DataGrid name DataGrid1
Adodc Name Adodc1
connection Connection string with
Microsoft Jet 4.1
hubungkan dengan
mahasiswa.mdb
Table / Store Procedure name mata_kuliah
Jalankan program VB anda, lalu amati apa hasilnya?
Percobaan 2 ( Proses Navigasi dalam Grid)
contoh kasus : tabel barang
Nama Field Type / Property
ProductID TEXT (20)
ProductName TEXT(20)
SupplierID TEXT(20)
CategoryID TEXT(20)
QuantityPerUnit SINGLE(4)
Unit Price Currency / long
Latihan Aplikasi :
Membuat TABLE BUKU
Table buku digunakan dengan untuk mengisi semua buku yang akan dimasukan.
Table Name: TABLE_BUKU
Name Type Size Keterangan Kunci
Kode_buku Text 6 Primary
Key
Judul_buku Text 20
Jenis_buku Text 10
Karang_buku Text 20 Pengarang buku
Terbit_buku Text 20 Penerbit buku
Tahun_buku Text 4 Tahun terbit
buku
Harga_buku Currency 8
Stok_buku Single 4
2. Membuat TABLE PELANGGAN
Table Name: TABLE_PELANGGAN
Name Type Size Keterangan Kunci
Kode_pelanggan Text 6 Primary
Key
Nama_pelanggan Text 20
Alamat_pelanggan Text 10
Telpon_pelanggan Text 20
3. Membuat TABLE USER
Table Name: TABLE_USER
Name Type Size Keterangan Kunci
Id_user Text 4 Primary Key
Nama_user Text 20
Type_user Text 15
Telpon_user Text 15
Alamat_user Text 30
Password_user Text 10
4. Membuat TABLE TRANSAKSI
Table Name: TABLE_TRANSAKSI
Name Type Size Keterangan Kunci
No_faktur Text 10 Nomor Faktur Primary Key
Tgl_faktur Date/Time 8 Tanggal Faktur
Kode_pelan Text 6 harus sama dengan
ggan Table_pelanggan
Id_user Text 4 harus sama dengan
Table_user
Biaya_kirim Currency 8
Total_bayar Currency 8
5. Membuat TABLE DETAIL
Table Name: TABLE_DETAIL
Name Type Size Keterangan Kunci
No_faktur Text 10 harus sama dengan Tidak
Table_transaksi Ada
Kode_buku Text 6 harus sama dengan
Table_buku
Jumlah_beli Single 4
Total_harga Currency 8
6. Membuat Table Bantu
Table Name: TABLE_BANTU
Name Type Size Keterangan Kunci
No_faktur Text 10 harus sama dengan Tidak
Table_transaksi Ada
Kode_buku Text 6 harus sama dengan
Table_buku
Jumlah_beli Single 4
Total_harga Currenc 8
y
7. Membuat Table Bayar
Table Name: TABLE_BAYAR
Name Type Size Keterangan Kunci
No_faktur Text 10 harus sama dengan Tidak
Table_transaksi Ada
Uang_bayar Currency 8
Uang_kembali Currency 8
– Akhirnya semua table telah dibuat dan pembuatan database telah selesai dilakukan.
- Untuk membuka database yang telah kita buat caranya adalah: pilih ADD-INS –
VISUAL DATA MANAGER – FILE – OPEN DATABASE – MICROSOFT ACCESS –
cari database buku yang tadi kita buat dan buka.
B. MEMBUAT FORM
– 1. Membuat FORM BUKU
NAME CAPTION/TEX KETERANG TAMBAHAN
T AN
Label1 Jenis buku Label
Label2 Kode buku Label
Label3 Judul buku Label
Label4 Pengarang Label
Label5 Penerbit Label
Label6 Tahun terbit Label
Label7 Harga Label
Label8 Stok Label
Label9 Masukan kode Label
Cbojenis - Combo Box
Txtkd1 - Textbox
Txtkode - Textbox
Txtjudul - Textbox
Txtkarang - Textbox
Txtterbit - Textbox
Txttahun - Textbox
Txtharga - Textbox
Txtstok - Textbox
Txtfind - Textbox
Cmdadd &add Command
Button
Cmdclear &clear Command
Button
Cmdsave &save Command
Button
Cmdedit &edit Command
Button
Cmddelete &delete Command
Button
Cmdexit &exit Command
Button
Data1 - Data
Dbgrid1 - Dbgrid Data source : data1
Buku Data Buku Form
Cmdprint &print Command Jika punya Crystal
Button Report
CR - Crystal Report Jika punya Crystal
Report
- Simpan Form Buku yang telah kita buat dengan nama BUKU.frm
- Adapun LISTING PROGRAM dari Form buku ini adalah:
Private Sub Form_Load()
Data1.DatabaseName = App.Path & "/buku.mdb"
Data1.RecordSource = "select * from Table_buku order by
Kode_buku"
Cbojenis.additem “AGAMA”
Cbojenis.additem “KOMPUTER”
Cbojenis.additem “PENDIDIKAN”
Cbojenis.additem “UMUM”
Cbojenis.additem “NOVEL”
Cbojenis.additem “KOMIK”
End Sub
Sub aktif()
TXTKODE.Enabled = True
TXTJUDUL.Enabled = True
TXTKARANG.Enabled = True
TXTTERBIT.Enabled = True
TXTTAHUN.Enabled = True
TXTHARGA.Enabled = True
TXTSTOK.Enabled = True
End Sub
Sub nonaktif()
TXTJUDUL.Enabled = False
TXTKARANG.Enabled = False
TXTTERBIT.Enabled = False
TXTTAHUN.Enabled = False
TXTHARGA.Enabled = False
TXTSTOK.Enabled = False
End Sub
Private Sub Form_Activate()
Call nonaktif
TXTKODE.Enabled = False
txtkd1.Enabled = False
CBOJENIS.Enabled = False
CMDCLEAR.Enabled = False
CMDSAVE.Enabled = False
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
End Sub
Private Sub CBOJENIS_Click()
TXTKODE.Enabled = True
TXTKODE.Text = ""
TXTKODE.SetFocus
If CBOJENIS.Text = "AGAMA" Then
txtkd1.Text = "AG"
Else
If CBOJENIS.Text = "KOMPUTER" Then
txtkd1.Text = "KP"
Else
If CBOJENIS.Text = "PENDIDIKAN" Then
txtkd1.Text = "PD"
Else
If CBOJENIS.Text = "UMUM" Then
txtkd1.Text = "UM"
Else
If CBOJENIS.Text = "NOVEL" Then
txtkd1.Text = "NV"
Else
If CBOJENIS.Text = "KOMIK" Then
txtkd1.Text = "KM"
End If
End If
End If
End If
End If
End If
End Sub
Private Sub TXTKODE_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
Data1.Recordset.FindFirst "Kode_buku=’" & (txtkd1.Text &
TXTKODE.Text) & "’" & ""
If Not Data1.Recordset.NoMatch Then
MsgBox "Kode sudah ada !", vbOKOnly, "peringatan"
Else
Call aktif
TXTJUDUL.SetFocus
End If
End If
If Not (IsNumeric(Chr(KeyAscii)) Or KeyAscii = vbKeyBack)
Then
Beep
KeyAscii = 0
End If
End Sub
Private Sub TXTFIND_Change()
Data1.RecordSource = "SELECT*FROM Table_buku WHERE Kode_buku
LIKE’*" & TXTFIND.Text & "*’"
DBGrid1.Refresh
Data1.Refresh
CMDEDIT.Enabled = True
CMDDELETE.Enabled = True
If Data1.Recordset.EOF Then
MsgBox "DATA TIDAK ADA !"
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
End If
If TXTFIND.Text = "" Then
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
End If
End Sub
Sub kosong()
TXTJUDUL.Text = ""
TXTKARANG.Text = ""
TXTTERBIT.Text = ""
TXTTAHUN.Text = ""
TXTHARGA.Text = ""
TXTSTOK.Text = ""
End Sub
Private Sub CMDADD_Click()
Call kosong
CBOJENIS.Enabled = True
CMDADD.Enabled = False
CMDCLEAR.Enabled = True
CMDSAVE.Enabled = True
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
TXTFIND.Enabled = False
End Sub
Private Sub CMDCLEAR_Click()
txtkd1.Text = ""
TXTKODE.Text = ""
CBOJENIS.Text = ""
TXTKODE.Enabled = False
CBOJENIS.Enabled = False
txtkd1.Enabled = False
Call kosong
Call nonaktif
TXTFIND.Text = ""
CMDADD.Enabled = True
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
TXTFIND.Enabled = True
End Sub
Private Sub CMDSAVE_Click()
With Data1.Recordset
.AddNew
!Kode_buku = (txtkd1.Text & TXTKODE.Text)
!Judul_buku = TXTJUDUL.Text
!Jenis_buku = CBOJENIS.Text
!Karang_buku = TXTKARANG.Text
!Terbit_buku = TXTTERBIT.Text
!Tahun_buku = TXTTAHUN.Text
!Harga_buku = Val(TXTHARGA.Text)
!Stok_buku = Val(TXTSTOK.Text)
.Update
End With
Data1.Refresh
DBGrid1.Refresh
MsgBox "data telah disimpan"
Call nonaktif
CMDADD.Enabled = True
CMDCLEAR.Enabled = False
CMDEDIT.Enabled = False
CMDDELETE.Enabled = False
TXTFIND.Enabled = True
CMDSAVE.Enabled = False
Call kosong
TXTKODE.Text = ""
txtkd1.Text = ""
CBOJENIS.Text = ""
TXTKODE.Enabled = False
CBOJENIS.Enabled = False
End Sub
Private Sub CMDEDIT_Click()
If CMDEDIT.Caption = "&EDIT" Then
Call tampil
Call aktif
CMDSAVE.Enabled = False
CMDCLEAR.Enabled = False
CMDADD.Enabled = False
CMDDELETE.Enabled = False
CMDEDIT.Caption = "&UPDATE"
TXTFIND.Enabled = False
Else
With Data1.Recordset
.Edit
!Kode_buku = (txtkd1.Text & TXTKODE.Text)
!Judul_buku = TXTJUDUL.Text
!Jenis_buku = CBOJENIS.Text
!Karang_buku = TXTKARANG.Text
!Terbit_buku = TXTTERBIT.Text
!Tahun_buku = TXTTAHUN.Text
!Harga_buku = Val(TXTHARGA.Text)
!Stok_buku = Val(TXTSTOK.Text)
.Update
End With
Call kosong
CMDEDIT.Caption = "&EDIT"
CMDADD.Enabled = True
CMDEDIT.Enabled = False
Call nonaktif
TXTFIND.Text = ""
TXTKODE.Text = ""
txtkd1.Text = ""
CBOJENIS.Text = ""
TXTFIND.Enabled = True
End If
Sub tampil()
On Error Resume Next
With Data1.Recordset
CBOJENIS.Text = !Jenis_buku
txtkd1.Text = Left(!Kode_buku, 2)
TXTKODE.Text = Right(!Kode_buku, 4)
TXTJUDUL.Text = !Judul_buku
TXTKARANG.Text = !Karang_buku
TXTTERBIT.Text = !Terbit_buku
TXTTAHUN.Text = !Tahun_buku
TXTHARGA.Text = !Harga_buku
TXTSTOK.Text = !Stok_buku
End With
End Sub
Private Sub CMDDELETE_Click()
CMDADD.Enabled = False
CMDCLEAR.Enabled = False
CMDEDIT.Enabled = False
a = MsgBox("YAKIN ANDA MAU MENGAHAPUS DATA INI ?", vbQuestion
+ vbYesNo, "KONFIRMASI")
If a = vbYes Then
Data1.Recordset.Delete
TXTKODE.Text = ""
txtkd1.Text = ""
CBOJENIS.Text = ""
Call kosong
MsgBox "DATA TELAH BERHASIL DIHAPUS", vbOKOnly, "INFO"
TXTFIND.Text = ""
TXTFIND.Enabled = True
Data1.Refresh
DBGrid1.Refresh
CMDADD.Enabled = True
Else
CMDDELETE.Enabled = False
CMDADD.Enabled = True
TXTFIND.Text = ""
TXTFIND.Enabled = True
End If
End Sub
Private Sub CMDEXIT_Click()
Unload Me
End Sub
Private Sub CMDPRINT_Click()
‘CR.ReportFileName = App.Path & "\BUKU.rpt"
‘CR.WindowState = crptMaximized
‘CR.RetrieveDataFiles
‘CR.Action = 1
end sub