06 November, 2010

Pemrograman Obyek Basis Data

Pemrograman Obyek Basis Data
Pada Pemrograman Berorientasi Obyek dengan Bahasa Visual Basic
Oleh
Harry Witriyono, SP.,M.Kom

Video tutorial dan panduan digital silahkan unduh di sini

Pada praktikum berikut ini kita akan mempelajari bagaimana pemrograman berorientasi obyek
yang menggunakan obyek-obyek basis data. Tujuan akhir dari praktikum ini anda dapat
membuat aplikasi yang menggunakan basis data dan merekam rekord-rekordnya ke dalam 1
tabel. Sebagai contoh kita akan membuat database bernama UMB dan tabel bernama
Mahasiswa.
Secara umum proses pembuatan aplikasi berbasis data adalah sebagai berikut :
1. Buatlah project baru dan form baru dengan layout form seperti berikut ini :
Tambahkan komponen obyek : Microsoft Ado Data Control 6.0 dan Microsoft Data Grid
Control 6.0
Setelah selesai membuat layout ini silahkan simpan project dan form tersebut ke dalam folder
kerja anda, contoh C:\UMB.
2. Buat database Microsoft Acces Versi 7.0 dengan cara menggunakan fasilitas Visual Data
Manager, caranya adalah :
a. Klik menu Add Ins – Visual Data Manager, sehingga muncul aplikasi Vis Data.
1
Universitas Muhamadiyah Bengkulu Panduan Praktikum Pemrograman Berorientasi Obyek I
Edisi 1. Tahun 2010
b. Pada aplikasi Visual Data Manager tersebut klik menu File – New – Microsoft Access –
Version 7.0 MDB.
c. Selanjutnya ketik nama databasenya, contoh : UMB, lalu simpan di folder kerja yang
tempat anda menyimpan project dan form pada tahap 1 tadi.
d. Setelah tersimpan database tersebut, klik kanan pada jendela Database Window lalu pilih
New Table, sehingga muncul form Table Structure.
e. Pada form Table Structure, ketik nama table pada kotak Table Name, contoh :
Mahasiswa.
f. Untuk membuat field-field pada table tersebut klik button Add Field, sehingga muncul
form Add Field.
g. Pada from Add Field, ketik nama field table pada kotak Field Name, contoh NPM, lalu
pilih tipe datanya pada pilihan Type, contoh Text, dan karena tipenya Text maka atur
ukurannya pada kotak Size menjadi 10. Selanjutnya karena NPM field kunci utama, dan
juga untuk kunci tamu bila ada, maka klik Fixed Field; sedang untuk yang lain biarkan
saja pada Variable Field. Dikarenakan NPM harus diisi maka hilangkan tanda cek pada
Allow Zero Length, dan karena sangat wajib diisi maka tandai cek pada Required. Untuk
mengakhiri pembuatan field ini klik OK.
h. Ulangi proses penambahan field untuk field-field NamaMahasiswa, Alamat, TglLahir,
JenisKelamin, dan NamaOrangTua seperti pada NPM tadi hanya saja sebagai field biasa.
Untuk mengakhiri proses pembuatan field-field tersebut klik button Close pada form Add
Field, sehingga kembali ke form Table Structure.
i. Bila perlu buatkan kunci pencarian atau Index dengan mengklik button Add Index.
j. Untuk mengakhiri pembuatan table, klik button Build The Table dan sekarang anda telah
mempunyai 1 tabel bernama Mahasiswa pada jendela Database Window anda.
3. Buat koneksi obyek Active Data Object (ADO) dengan database dan table / recordset
yang telah dibuat. Caranya adalah sebagai berikut :
a. Klik kanan obyek ADODC1 pada form yang telah kita buat pada tahap 1, lalu pilih
ADODC Properties.
b. Pada tabulasi General, pilih Use Connection String dan klik button Build.
c. Selanjutnya pilih provider databasenya Microsoft Jet 4.0 OLE DB, karena kita
menggunakan Microsoft Access, tetapi bila kita menggunakan MySql maka kita pilih
Microsoft OLEDB Provider for ODBC driver. Akhiri tahap ini dengan mengklik Next
atau pindah ke tabulasi Connection.
d. Pada tabulasi Connection, pilih nama database yang kita buat tadi pada tahap 2. Periksa
koneksinya dengan Test Connection, lalu akhiri dengan klik button OK.
e. Kembali ke form Property Pages, klik tabulasi RecordSource dan pilih Command Typenya
2 – adCmdTable, lalu pilih tabelnya pilihan Table or Stored Procedure Name, yaitu
table Mahasiswa.
f. Untuk mengakhiri proses pembuatan koneksi obyek ADO ini ke database, klik button
Apply dan Close.
2
Universitas Muhamadiyah Bengkulu Panduan Praktikum Pemrograman Berorientasi Obyek I
Edisi 1. Tahun 2010
4. Tahapan selanjutnya adalah memberikan kode program pada obyek command button
Tambah, Koreksi, Simpan, Hapus dan Selesai yang telah dibuat. Daftar lengkap semua kode
dapat anda lihat seperti berikut ini :
Private Sub Command1_Click() 'tambah
npmbaru = InputBox("Ketik NPM mahasiswa baru:", "Periksa NPM")
If npmbaru = Empty Then Exit Sub
npmbaru = Mid(npmbaru, 1, 10)
Adodc1.Recordset.Find "NPM='" & npmbaru & "'", , adSearchForward, 1
If Not Adodc1.Recordset.EOF Then
MsgBox "Rekord sudah ada !", vbOKOnly, "Periksa NPM"
Exit Sub
End If
Adodc1.Recordset.AddNew
Text1.Text = npmbaru
Text2.SetFocus
End Sub
Private Sub Command2_Click() 'koreksi
npmkoreksi = InputBox("Ketik NPM yang dikoreksi:", "Cari NPM")
If npmkoreksi = Empty Then Exit Sub
Adodc1.Recordset.Find "NPM='" & npmkoreksi & "'", , adSearchForward, 1
If Adodc1.Recordset.EOF Then
MsgBox "Rekord belum ada !", vbOKOnly, "Cari NPM"
Exit Sub
End If
Adodc1.Recordset.Update
Text2.SetFocus
End Sub
Private Sub Command3_Click() 'simpan
Adodc1.Recordset.UpdateBatch
End Sub
Private Sub Command4_Click() 'hapus
hapus = MsgBox("Apakah anda yakin akan menghapus rekord ini ?", vbYesNo + vbDefaultButton2,
"Hapus Rekord")
If hapus = vbYes Then
On Error Resume Next
Adodc1.Recordset.Delete
Adodc1.Recordset.MoveNext
End If
End Sub
3
Universitas Muhamadiyah Bengkulu Panduan Praktikum Pemrograman Berorientasi Obyek I
Edisi 1. Tahun 2010
Private Sub Command5_Click() 'selesai
Unload Me
End Sub
5. Simpan project dan form anda sekali lagi dan jalankan aplikasi anda atau kompilasi
project anda menjadi sebuah aplikasi basis data untuk 1 tabel. Tampilan akhir setelah kita
coba isi beberapa record seperti berikut ini.
Tugas :
Silahkan buat aplikasi database untuk database perpustakaan, yang mempunyai table anggota
dengan field-field : NoAnggota, Nama, Alamat, TglDaftar; dan table pustaka yang mempunyai
field-field : KodePustaka, JudulPustaka, Pengarang, Penerbit, TahunTerbit.
Demikian acara praktikum kita pada sesi ini, selamat belajar dan sampai jumpa pada sesi
berikutnya.

Absensi Praktikum Tgl. 07 Nopember 2010 silahkan pada Komti Kelas masing-masing.

36 komentar:

Unknown mengatakan...

Ass....
pak, mo nanya, lw aplikasinya tu ud d buat, truz dipindahkan k falsdisk dy jd error, minta koneksikan lagi k database nya.
kira-kira gimana supaya dy dipindahkan tapi tidak terjadi error pada koneksi adodc nya......

Unknown mengatakan...

pak fungsi "&" pada penulias tambah, hapus, simpan dan koreksi pada caption itu untuk apa?
jika tidak di gunakan berpengaruh gak dengan form yg sudah kita buat.

Febby mengatakan...

asslamualaikum pak Harry
Pak.Usul ni pak..jelasin konsep Dasar ngebkin database pake MySQL pak..
Makasih Yg tak Terhingga sebelumnya pak..
Wss..

DIAN KUSUMA mengatakan...
Komentar ini telah dihapus oleh pengarang.
DIAN KUSUMA mengatakan...
Komentar ini telah dihapus oleh pengarang.
DIAN KUSUMA mengatakan...

Asslm,

Mau nanya pak hari...

di Visual Basic, bagaimana ya untuk membuat database mysql secara otomatis dari form... tolong kasih coding nya pak..

maksudnya supaya pada saat kita jalankan program kita, akan tampil form untuk mengisi server, user, pass dan dbname... dan ketika di klik proses database sudah terbentuk dan terkoneksi dengan program..

Mohon pencerahnnya ya.. pak...

Terima kasih sebelumnya.

Kulo
nama : Dian Kusuma
npm : 0860100184


Wassalam
===============================

assalamualaikum.

Pak Erwin mu naya tentang program vb yang membahas tentang Form arisan yang kemarin,.....
apakah ada koding yang lebih singkat dan praktis..;...apa memang harus sepesti itu kodingnya?//....

trimakasih sebelumnya pak.
nama: Erwin Gustian
Npm : 0860100045

wassalam...
============================

assalamualaikum.

saya nico pak mau bertanya masalah mempelajari coding-coding yang mudah bagi orang awam , biar kami saya khususnya bisa memahami fungsi coding tersebut....

trimakasih sebelumnya Pak ?????...

Nama: Nico Ardi Putra
Npm : 0860100194

wassalam..

setsun mengatakan...

Ass. Nama : YAYAN 5B TI (NPM : 0860100167 )

APA fungsi dari aplikasi Vis Data dalm pembuat data tesrsebut.......

Febryansah mengatakan...

ass....
pak gaman sih logikanya buat code-code tu????
Q gak paham ,,,tolong di bntu ya pak...

Unknown mengatakan...

arif edy witoyo
0860100197
pak kenapa aplikasi databse jika di pindah keflsdisk atau yang lain, selalu kita setting lagi dari ado?

Unknown mengatakan...

endra pamungkas
0860100056
ass
pak maap mau tanya semua tugas dikumpulkan hari ap? dan kalau databse kita menggunakan microsoft sql apakaah bisa?
terima kasih ws

reki mengatakan...

Reki Mardiansyah Putra
0860100130 (klas Vc)

Deiky Sasfebrinogi mengatakan...

Ass.. Pak ini Deki..!! Semua tugas kita ada tiga kan pak..?? Deki mau nanya soal tugas yg kedua..?? kemaren kan wktu tgl 4 bpak ngasih materi trus kmi di sruh membuat tgs y bikin program Perpustakaan..?? sudah tuh wktu kami mau ngumpul tugas yg kedua pd tgl 11..?? Bapak bilang.. "Kumpul ajah semua nya sekaligus minggu depan dri tgs 1-3..." yg deki mau tanyakan cara pembuatan tgz yg kedua di ubah lgi enggak pak..?? krna pda tgl 11 bpak ngasih cra lain..tpi enggak menggunakan cara pd tgl 4 lagi..!! jdi tugaz yg kedua tuh kyk gmana..?? tetap ajh apa perlu di rubah lagi pak..?? krna kmi udh bikin cara tgl 4. Tpi klo yg ke 3 bru menggunakan cara pd materi tgl 11..

itu saja pak..

wassalammualaikum

Nama : Deiky Sasfebrinogi
NPM : 0860100201.P
Kelas : V B

Deiky Sasfebrinogi mengatakan...

Ass...!!!
Pak, Deki mau nanya..?? gmana agar kita bisa lebih memahami & menghapal rumus-rumus pda bahasa pemograman..?? krna saya melihat bapak.. seperti nya sudah biasa sekali dgn bahasa-bahasa yg menurut saya sangat sulit dimengerti dan d ingat..?? terutama pada DOS dan Java..

Nama : Deiky Sasfebrinogi
NPM : 0860100201.P
Kelas : V.B

Anonim mengatakan...

pak apakah dalam buat aplikasi yang berbasis database harus pake microsoft access aja???apa bisa gunakan yang lainnya pak????

suko widi tilarso
0860100187(5c)

harrywitriyono mengatakan...

Jawabannya :
1. Error waktu dipindah ke media lain karena tidak menempatkan posisi file database bersamaan dengan file project dan form, juga tidak menghilangkan nama drive dan folder pada saat 'build' di ADODC.

2. Fungsi & pada caption di button untuk membuat shortcut terhadap button tersebut. Sehingga bila captionnya &Tambah, maka button tersebut dapat diakses dengan cara tekan tombol Alt T, begitu seterusnya.

3. Buat database otomatis yang pernah saya coba pake bahasa PHP, kalo VB belum pernah, Insya Allah ada solusinya dengan VB. Kita coba.
Rujukan lain coba pada http://www.indo-code.com

4. Cara buat database dengan MySQL Insya Allah akan saya terangkan pada kuliah online berikutnya.

5. Pembuatan tugas yang pakai database yang pertama tetap pake cara awal, yang kedua pake cara kedua. Pada prinsipnya lebih baik cara ke dua yang pakai ODBC karena lebih flexibel.

6. Pembuatan ODBC dengan coding silahkan lihat tulisan saya di http://www.indo-code.com (kalo nggak salah pernah saya kirim ke sana).

angga mengatakan...

nama : angga
npm : 0860100018 (klasVc)
====================================
nama : rozi oktanza
npm : 0860100138(klasVc)

rozi mengatakan...

asalamualaikum pak
saya Rozi Oktanza
0860100138(V.C)

rozi mengatakan...

Rozi oktanza
0860100138
(V.C)

Andik mengatakan...

Assalamualaikum Wr.Wb..

Pak harry saya mo nanya?
Bagaimana cara membesarkan tampilan kolom di DG tanpa menariknya dgn
mouse(jadi otomatis tampil sesuai kehendak kita = settingnya bagaimana?)
wassalam.....
Dari : Andik Tri Bahtiar
NPM : 0860100015

Endriko mengatakan...
Komentar ini telah dihapus oleh pengarang.
Endriko mengatakan...

ass..
pak kalo di internet, apa adakah web site yang memberi pengetahuan tentang vb dan contoh pembuatan software lain nya ??

Nama : Endriko
NPM : 0860100057
Kelas : VB

bambang mengatakan...

assla wr.wb,,,
Bagaimana cara merubah tampilan field di DataGrid misalnya di tabel Access
2003 fieldnya Fajarak maka yang timbul di DG juga Fajarak , saya menginginkan
menjadi Faktor Jarak, bagaimana cara merubahnya..?
nama : Bambang Supriyadi
NPM : 0860100030
kls : 5b

bumi alam mengatakan...

ass, , ,
Mohon ditambahkan lagi materi mata kuliahnya pak buat belajar lagi, mkasih . . .
wss, , ,
nama : Tomi prasetya.B.A
NPm : 08601010155

bianca mengatakan...

maKasih pak bLog nya saNgat meMbantu KamI dLm MeNyeLesaiKan Tgs...

bianca mengatakan...

AssaLamuaLaikUm,wR,wB,,,

makSiH bLog nya Sangat MrMbantu dLm meNyeLesaiKan TGs nya pakk,,


nama : bianca kassandra
npm : 0860100035
teknik informatika
UMB

Dony Af mengatakan...

Assalamualaikum....
tugas penggajian masih bingung pak

tri_bowo mengatakan...

tribowo
0860100157
VC

Fiken mengatakan...

aslkm pak
saya mau nanya, kenapa pada saat kita mau ngesave data vb kog ngak mau tersimpan?????????
terima kasih sebelumnya
dari:
Fiken adi candra
smtr 5b

Satya Nugraha Pebri mengatakan...

Ass..
Pak, g mana menampilkan 2 table ke 1 grid/ menampilkan 2 adodc ke dlm 1 grid secara bergantian
sintaknya apa pak..??
o ya Pak, klo d Delphi ad Open sama Show klo d VB ap??

trima kasih Pak, ats smuanya..
wss...

Pebri satya nugraha
0860100177

RINO INDRA mengatakan...

Ass...
Pak ini Rino,,
Pak saya ingin bertanya....!!!
Kenapa Sintak/Kode open dialog tidak ALL File(*.*) saja, Setiap program diakhirnya saja yang dibuat ALL File, jadi apa bedanya Pak???
Kalau diawali kode yang lain dengan langsung ALL File.
Terima Kasih,
Wss...

NAMA : RINO INDRA LESTARI
NPM : 0860100134 (Vc)

Dony Af mengatakan...

Dony Afrianto
0860100051
Vc

Asalamualaiqum....
tugas penggajian maih gagal teru pak...

vicky mengatakan...

ass pak
kenapa listing yang dibuat sering eror padahal listingnya udah benar

Fitri mengatakan...

pak ini fitri susanti 5b.

rita juwita mengatakan...

ass......
nama : Rita juwita sari
npm : 0860100135
kelas: 5b

dina lesta mengatakan...

ass,,,,
nama = dina lestarina
kls = 5b
npm = 0860100047

Asep mengatakan...

Ass..
nama : asep 5e
npm : 0860100028
mau tanya pak ada enggak pak buku yang menjelaskan arti atau pun fungsi setiap koding yang kita ketik pada pemograman visual atau pun java pak klw ada tolong kasih tahru nama bukunya dong pak...?trimakasi sblm nya pak