Pemrograman Visual 1 (VB Fund) Database

Pemrograman Visual 1 (VB Fund)
Database
Agung Sasongko, M.Kom

Basis Data / Database





Kumpulan data
Disimpan berupa file
Dikelola oleh sistem tertentu.
Basis data yang di gunakan pada praktikum ini adalah
Microsoft Access

Visual Basic dan Database


Mengelola basis data melalui antarmuka yang dibangun di
Visual Basic.


Connector / Driver
Visual Basic

Database

Komponen Yang Diperlukan



Komponen yang digunakan untuk koneksi ke basis data
Microsoft ActiveX Data Object (ADO) Data Control
Project->[Components]

Membuat Buku Kontak



Program untuk menyimpan kontak seseorang.
Data terdiri dari:







Nama
Gender
Alamat
Tanggal Lahir
No. telepon

Buat Database




Buatlah database menggunakan Ms.Access dengan file
format Ms. Access 2000 s/d 2003. Dengan nama
dbkontak.mdb, diletakkan di folder yang sudah

dipersiapkan. Contoh: d:\vbkontak\
Buatlah table kontak dengan struktur sbb:
No. Field Name

Field Type

Size

1

ID

Autonumber

2

nama

Text


50

3

gender

Text

1

4

alamat

Text

255

5


tgllahir

Date/Time

6

notelp

Text

Keterangan
PK

13

Include Component


Gunakan Komponen



Microsoft ADO Data Control 6.0 (OLEDB)



Microsoft DataGrid Control 6.0 (OLEDB)



Microsoft Windows Common Control-2 6.0

Design Form

optpria

optwanita
Textbox
Name = txtalamat
Multiline = true
Scrollbar = vertical


Simpan Project


Gantilah nama Project
sesuai yang anda inginkan,
misalkan BukuKontak.
Perubahan Nama Projek
melalui menu : Project ->
Project1 Properties



Simpanlah project di satu
folder dengan basis data
disimpan.

Pastikan Project VB dan DB berada di satu
folder yang sama





Keluar dari Visual Basic, dan pastikan file Project Visual
Basic dan Basis Data dbkontak.mdb berada di folder
yang sama. Hal ini untuk bertujuan konfigurasi koneksi
nantinya dapat berjalan secara fleksibel.
Kemudian buka project Visual Basic buku tamu yang sudah
dibuat melalui folder ini.

Setting Koneksi Ke Basis Data




Gunakan Adodc1 untuk mengatur koneksi.
Pilih Adodc1, Masuk ke properties->(Custom)
Pilih Use Connection String, tekan tombol [Build]

Pilih Provider Konektor Basis Data





Pilih Provider : Microsoft
Jet 4.0 OLE DB Provider
Kemudian [Next]

Tentukan Basis Data




Isikan Nama Database. Nama database yang sudah dibuat
adalah dbkontak.mdb.
Kemudian uji
[Test Connection]
Bila pengaturan benar, maka
akan tampil pesan koneksi
sukses.


Bila sudah klik OK…OK…

Pengaturan Koneksi Tabel







ADODC adalah komponen untuk mengelola salah satu tabel yang ada
di basis data. Setelah mengatur koneksi, lakukan pengaturan tabel
yang akan dikelola.
Masih di Properties ADODC1, masuk ke RecordSource
Set CommandType = 2-adCmdTable
Set Table = kontak
Bila sudah OK

Menampilkan Tabel Ke DataGrid



Datagrid merupakan objek untuk menampilkan isi data
dari tabel database. Untuk dapat menampilkan atur
Properties Datagrid:
DataSource = ADODC1

Melihat Hasil Koneksi


Untuk Memastikan Visual Basic telah terhubung ke
Basisdata, sekarang jalankan Program.

Buat Procedure Bersih
Sub bersih()
nama_objek_text_nama.Text = ""
nama_objek_option_pria.value = False
nama_objek_option_wanita.value = False
nama_objek_text_alamat.Text = ""
nama_objek_dtpicker_tgglahir.Value = Now
nama_objek_text_notelp.Text = ""
End Sub

Buat Procedure AktifInput(state)
Sub AktifInput(state As Boolean)
Dim warnaBg As Long
nama_objek_text_nama.Enabled = state
nama_objek_option_pria.Enabled = state
nama_objek_option_wanita.Enabled = state
nama_objek_text_alamat.Enabled = state
nama_objek_dtpicker_tgglahir.Enabled = state
nama_objek_text_notelp.Enabled = state
warnaBg = IIf(state, vbWhite, vbButtonFace)
nama_objek_text_nama.BackColor = warnaBg
nama_objek_text_alamat.BackColor = warnaBg
nama_objek_text_notelp.BackColor = warnaBg
End Sub

Implementasi Procedure Bersih dan
AktifInput


Ketikkan di [Form] event [Load

Call bersih
Call AktifInput(False)

Implementasi Procedure Bersih dan
AktifInput


Ketikkan di command [Baru] event [Click]
Call bersih
Call AktifInput(True)
nama_objek_text_nama.SetFocus
nama_objek_command_simpan.Enabled = True

Implementasi Procedure Bersih dan
AktifInput


Ketikkkan di command [Batal] event [Click]

Call bersih
Call AktifInput(False)

Buat Fungsi Simpan
Function simpan() As Boolean
On Error GoTo out
With Adodc1.Recordset
.AddNew
!nama = nama_objek_text_nama.Text
If nama_objek_option_pria.Value = True Then
!gender = "L"
Else
!gender = "W"
End If
!alamat = nama_objek_text_alamat.Text
!tgllahir = nama_objek_dtpicker_tgllahir.Value
!notelp = nama_objek_text_notelp.Text
.Update
End With
simpan = True
out:
End Function

Implementasi Fungsi Simpan


Gunakan fungsi simpan di command [Simpan]
event [Click]

If simpan() = True Then
MsgBox "Berhasil Simpan!", vbInformation
Call bersih
Call AktifInput(False)
Else
MsgBox "Gagal simpan!", vbCritical
End If

Testing Simpan Data

Tombol Edit Klik
Ketikkan perintah di Command [Edit] event [Clik]
With Adodc1.Recordset
nama_objek_text_nama.Tag = !id
nama_objek_text_nama.Text = !nama
If !gender = "L" Then
nama_objek_option_pria.Value = True
Else
nama_objek_option_wanita.Value = True
End If
nama_objek_text_alamat.Text = !alamat
nama_objek_dtpicker_tgllahir.Value = !tgllahir
nama_objek_text_notelp.Text = !notelp
End With
Call AktifInput(True)
nama_objek_command_simpan.Enabled = False

Membuat Fungsi Ubah
Function ubah() As Boolean
On Error GoTo out
With Adodc1.Recordset
.Find "ID=" & nama_objek_text_nama.Tag
!nama = nama_objek_text_nama.Text
If nama_objek_option_pria.Value = True Then
!gender = "L"
Else
!gender = "W"
End If
!alamat = nama_objek_text_alamat.Text
!tgllahir = nama_objek_dtpicker_tgllahir.Value
!notelp = nama_objek_text_notelp.Text
.Update
End With
ubah = True
out:
End Function

Implementasi Tombol Ubah Klik
Ketikkan di command [Ubah] event [Click]
If ubah() = True Then
MsgBox "Perubahan data berhasil!", vbInformation
Call bersih
Call AktifInput(False)

Else
MsgBox "Perubahan data gagal!", vbCritical
End If

Membuat fungsi Hapus
Function hapus(id As String) As Boolean
On Error GoTo out:
With Adodc1.Recordset
.Find "ID=" & id
.Delete
End With
hapus = True
out:
End Function

Implementasi Tombol Hapus
Ketikkan di command [Hapus] event [Click]
Dim id As String
Dim nama As String
id = Adodc1.Recordset!id
nama = Adodc1.Recordset!nama
If MsgBox("Apakah anda yakin akan " & _
"menghapus data kontak yang bernama " & nama & "?", _
vbQuestion + vbYesNo) = vbYes Then
If hapus(id) = True Then
MsgBox "Berhasil hapus data", vbInformation
Call bersih
Call AktifInput(False)
Else
MsgBox "Gagal menghapus data!", vbCritical
End If
End If

Buat Procedure Baca status Record
Sub bacaStatusRecord()
With Adodc1.Recordset
lblCount.Caption = .AbsolutePosition & "/" & .RecordCount
End With
End Sub

Implementasi Command [Awal] Event [Click]
If Not Adodc1.Recordset.BOF Then
Adodc1.Recordset.MoveFirst
End If
call bacaStatusRecord

Implementasi Tombol Sebelum () Click
If Not Adodc1.Recordset.EOF Then
Adodc1.Recordset.MoveNext
End If
call bacaStatusRecord

Implementasi Tombol Akhir Click
If Not Adodc1.Recordset.EOF Then
Adodc1.Recordset.MoveLast
End If
call bacaStatusRecord

Jalankan Program


Testing semua fungsi apa sudah berjalan dengan baik apa
belum 

Mengisi Combobox Dari Field Tabel
Database




Buatlah database Ms.Access Format 2000 atau 2003.
Berilah nama sebagai contoh : dbrental.mdb
Struktur tabel film sebagai berikut
No

Field Name

Field Type

Size

1

*Kd_film

TEXT

4

2

Judul

TEXT

50

3

Hrg_sewa

NUMBER

Integer

Isi Data


Isilah tabel film dengan isi sebagai berikut:

No.

Kode
Film

Judul

Harga
Sewa

1

D-01

City Hunter

10.000

2

D-02

Sassy Girl Chun Hyang

9.000

3

A-02

MIB 3

2500

4

C-01

The Adventure Doraemon

2000

5

C-02

The Simpson

2000

6

C-03

Ice Age 4

2500

7

A-01

The Amazing Spiderman

3000

Buat Project Visual Basic



Buatlah Project Visual Basic
Gunakan Komponen


Microsoft ADO Data Control 6.0 (OLEDB)

Design Form

Beri Nama Poject Visual Basic



Berilah nama Project, dengan nama “RentalFilm”
[Project] -> [Project1 Properties]

Simpan Project Di satu Folder Dengan
Database




Pastikan Project VB dan Database berada pada satu folder
yang sama.
Tutuplah Visual Basic anda, dan buka project VB kembali
dari explorer, sbb:

Setting Koneksi Ke Basis Data




Gunakan Adodc1 untuk mengatur koneksi.
Pilih Adodc1, Masuk ke properties->(Custom)
Pilih Use Connection String, tekan tombol [Build]

Pilih Provider Konektor Basis Data




Pilih Provider : Microsoft
Jet 4.0 OLE DB Provider
Kemudian [Next]

Nama Database
Isikan nama database yang
telah dibuat tadi, yaitu
dbrental.mdb
 Kemudian
“test connection”
Bila pengaturan benar,
maka Test Connection
Succeeded seperti gambar
disamping.
Jika sudah, klik OK..OK..


Atur Tabel





Masih di Form Property Page, aturlah RecordSource
Set CommandType = 2 – adCmdTable
Set Table = film (nama tabel yang ingin di kontrol)
Bila sudah klik OK

Set Datasource ke Combobox
Atur Combo Kode Film di bagian properties
Datasource = Adodc1



Buat procedure isiKodefilm
Sub isiKodeFilm()
With Adodc1.Recordset
.MoveFirst
cboKdFilm.Clear
Do While Not .EOF
cboKdFilm.AddItem !kd_film
.MoveNext
Loop
End With
End Sub

Implementasi Procedure


Panggil Procedure di Form_Load sbb:

Private Sub Form_Load()
Call isiKodeFilm
End Sub

Lihat Hasilnya


Jalankan program untuk melihat apakah combobox sudah
terisi dengan data dari tabel Film????

Menampilkan Bagian Data dari Tabel
Berdasarkan ID (Primary Key)




Dari contoh program rental yang telah dibuat tadi, agar
combobox yang terpilih dapat menampilkan judul dan
harga sewa maka perlu dibuatkan perintah pencarian.
Bila hasil data yang dicari ditampilkan pada saat telah
terpilihnya item combobox maka perintah pencarian
diletakkan pada event Click

Fungsi Pencarian
Function cariFilm(kode As String) As Recordset
Adodc1.Recordset.MoveFirst
Adodc1.Recordset.Find ("kd_film='" & kode & "'")
Set cariFilm = Adodc1.Recordset
End Function

Implementasi pada Combobox kode film Klik
Private Sub cboKdFilm_Click()
With cariFilm(cboKdFilm.Text)
txtJudul.Text = !judul
txtHarga.Text = !hrg_sewa
End With
End Sub

Jalankan Program


Untuk melihat hasil, jalankan program dan pilihlah salah
satu item pada combobox, lihat hasilnya. Apakah judul film
dan harga tampil sesuai kode yang dipilih????

Latihan


Buatkan sebuah program untuk menyimpan Data Penduduk.
Data yang direkam adalah:















No KTP,
Nama,
Jenis Kelamin,
tempat lahir,
tanggal lahir,
Kabupaten
Kota
Provinsi
Alamat Rumah,
RT
RW
agama,
pendidikan terakhir