0% menganggap dokumen ini bermanfaat (0 suara)
8 tayangan18 halaman

Materi 15 - Pemrograman Database

Diunggah oleh

rizalubp
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
8 tayangan18 halaman

Materi 15 - Pemrograman Database

Diunggah oleh

rizalubp
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 18

PEMROGRAMAN DATABASE

Pendahuluan
Database merupakan bagian dari kehidupan kita sehari-hari meskipun sering tidak
disadari. Sebagai contoh di STMIK Duta Bangsa, database digunakanuntuk menyimpan data
para mahasiswa, dosen, jadwal kuliah, nilai masing- masing mahasiswa, dan lain-lain.

Database merupakan sekumpulan data yang saling berhubungan, didesain untuk


menyediakan informasi pada sebuah organisasi. Sedangkan DBMS (The Database Management
System) merupakan perangkat lunak yang digunakan untuk mendefinisikan, membuat,
mengatur, dan menyediakan akses pada database. Microsoft Access merupakan contoh software
RDBMS (Relation DBMS).

Materi

Membuat Database dan Tabel dengan Visual Data Manager


Untuk membuat database dengan Visual Data Manager, lakukan langkah-langkah sebagai
berikut :
Pilih menu Add Ins pada menu utama Visual Basic, kemudian pilih VisualData Manager
Pilih File – New – Microsoft Access – Version 7.0 MDB
Berikan nama database(misal dbAkademik), tentukan tempat dimana Andaakan menyimpan
database, kemudian klik Save.
Untuk membuat tabel, klik kanan Properties, pilih New Table
Gambar 9.1 Membuat tabel
Isikan nama tabel, klik Add Field, isikan nama field, tipe data dan tentukan Filed Sizenya, Klik
OK.

Gambar 9.2 Struktur Tabel


Untuk membuat Primary Key pada Field, klik Add Index, isikan Name (misal:NIM), pada
Available Fields pilih Field yang akan dijadikan Primary Key (misal pilih NIM)
Tentukan pilihan Index ( Primary, Unique, IgnoreNulls). Primary digunakan sebagai pengenal
suatu record, jika tabel yang dihubungkan berhubungan
denga tabel yang lain (dalam satu tabel hanya boleh ada satu primary key). Unique dipilih jika
ingin indeks bersifat unik, IgnoreNulls digunakan untuk mengabaikan field yang kosong.

Gambar 9.3 Menentukan Primary Key


Jika Anda sudah membuat semua Field yang dibutuhkan, maka klik Buildthe Table

Mengisi Data Pada Tabel


Klik kanan pada nama tabel (tbMahasiswa, pilih Open

Gambar 9.4 Membuka Tabel


Muncul window Dynaset:Mahasiswa

Gambar 9.5 Mengisikan data pada tabel


Fungsi menu yang ada pada tabel tbMahasiswa
Add : menambah record baru
Edit : mengoreksi record
Delete : menghapus record aktif
Find : mencari record
Refresh : menampilkan ulang setelah record mengalami perubahan
Close : menutup tabel

Data Acces Object (DAO)

DAO (Data Access Object) merupakan suatu Object Data Access Yang berukuran besar meliputi
kemampuan Data Definition, Data Manipulation dan Database Maintenance. Untuk mengakses
database menggunakan DAO dibutuhkan object Data. Jika dikoneksikan dengan Microsoft
Access DAOhanya bisa dikoneksikan dengan Access 97.

Gambar 9.6 Objek Data


Beberapa properti yang dimiliki oleh objek Data dapat Anda lihat pada tabel9.1
Tabel 9.1 Properti Objek Data

Properti Keterangan
Hubungan file data, bias bersumber dari Access,
Connect
dBase,
Excel, Foxpro, Lotus, Paradox, dan file Text.
DatabaseN Nama file database
ame
RecordSou Tabel dalam database
rce
Pengecekan pergerakan kusror. Jika kursor
sampai padaakhir file, maka terdapat pilihan
EOF
property : MoveLast
Action
(record terakhir), EOF (akhir file), AddNew
(menambahrecord baru)
Recordset Tipe record : 0-Table, 1-Dynaset, 2-SnapShot
Type

Koneksi database dengan DAO


Untuk koneksi database dengan DAO, Anda harus menambahkan objek Datapada Form. Ada
dua cara koneksi database menggunakan DAO
Dengan mengatur property dari objek Data
Tabel 9.2 Properti Kontrol Data dbAkademik
Property Setting Value
Name datAkademik
Caption dbAkademik
Connect Access
Database dbAkademik
Name
Recordso tbMahasiswa
urce

Pengaturan dengan mengetikkan kode program seperti berikut :

Private Sub Form_Load()


datAkademik.DatabaseName = App.Path & "\dbAkademik.mdb"
datAkademik.RecordSource = "tbMahasiswa"
End Sub

Koneksi database cara pertama masih bersifat statis yang artinya jika program/file dipindah ke
folder atau drive lain, maka pengaturan properti DatabaseName harus disesuaikan dengan
program/file berada.
Koneksi database cara kedua, sifatnya dinamis. App.Path digunakan untuk mendapatkan folder
aktif.
Contoh Program menggunakan DAO
Berikut adalah contoh program olah data Mahasiswa di STMIK Duta Bangsa.Atur Form seperti
pada contoh gambar 9.7.
Grid menggunakan DBGrid. Untuk menambahkan DBGrid di toolbox adalah dari menu
Project – Components, pilih tab Controls- kemudianpilih Microsoft Data Bound Grid
Control 5.0. Atur properti Datasource dari DBGrid, pilih datAkademik.

Gambar 9.7 Program olah data mahasiswa dengan DAO

Ketik kode program berikut :

Koneksi Database
Private Sub Form_Load()
Data1.DatabaseName = App.Path & "\Akademik.mdb"
Data1.RecordSource = "Mahasiswa"
End Sub
Form Activate
Private Sub Form_Activate()
kosong
tdksiap
batal.Enabled = False
simpan.Enabled = False
tambah.SetFocus
End Sub

Tombol Edit

Private Sub cmdEdit_Click()


If cmdEdit.Caption = "Edit" Then
txtNIM.Enabled = True
txtNIM.SetFocus
cmdEdit.Caption = "Update"
cmdNew.Enabled = False
cmdDel.Enabled = False
Else
With datAkademik.Recordset
.Edit 'Perintah untuk edit data
!Nama = txtNama.Text
!Alamat = txtAlamat.Text
!TglLahir = dtpLahir.Value
.Update
End With
cmdCancel_Click ' memanggil cmdCancel_Click
End If
End Sub

Sub Rutin
Sub kosong()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Combo1.Text = ""
End Sub
Sub siap()
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
Combo1.Enabled = True
End Sub
Sub tdksiap()
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Combo1.Enabled = False
End Sub
Tombol Tambah
Private Sub tambah_Click()
tombol = "TAMBAH"
siap
kosong
Text1.SetFocus
batal.Enabled = True
simpan.Enabled = True
tambah.Enabled = False
keluar.Enabled = False
ubah.Enabled = False
hapus.Enabled = False
End Sub

Tombol Simpan
Private Sub simpan_Click()
If tombol = "UBAH" Then
Data1.Recordset.Edit
Data1.Recordset!NIM = Text1.Text
Data1.Recordset!nama = Text2.Text
Data1.Recordset!alamat = Text3.Text
Data1.Recordset!prodi = Combo1.Text
Data1.Recordset.Update
Data1.Refresh
End If

If tombol = "TAMBAH" Then


Data1.Recordset.AddNew
Data1.Recordset!NIM = Text1.Text
Data1.Recordset!nama = Text2.Text
Data1.Recordset!alamat = Text3.Text
Data1.Recordset!prodi = Combo1.Text
Data1.Recordset.Update
Data1.Refresh
End If

kosong
tdksiap
simpan.Enabled = False
batal.Enabled = False
tambah.Enabled = True
keluar.Enabled = True
ubah.Enabled = True
hapus.Enabled = True
End Sub
Tombol Batal
Private Sub batal_Click()
kosong
tdksiap
batal.Enabled = False
simpan.Enabled = False
keluar.Enabled = True
tambah.Enabled = True
ubah.Enabled = True
hapus.Enabled = True
tambah.SetFocus
End Sub

Tombol Ubah
Private Sub ubah_Click()
tombol = "UBAH"
siap
Text1.SetFocus
batal.Enabled = True
simpan.Enabled = True
tambah.Enabled = False
keluar.Enabled = False
ubah.Enabled = False
hapus.Enabled = False
End Sub

Tombol Hapus
Private Sub hapus_Click()
jawab = MsgBox("Yakin Data tersebut akan dihapus
...?", vbYesNo + vbQuestion, "Konfirmasi")
If jawab = 6 Then

Data1.Refresh
End If

End Sub

Tombol Keluar
Private Sub keluar_Click()
Unload Me
End Sub
DbGrid1 RowColChange

Private Sub DBGrid1_RowColChange(LastRow As Variant,


ByVal LastCol As Integer)
Text1.Text = Data1.Recordset!NIM
Text2.Text = Data1.Recordset!nama
Text3.Text = Data1.Recordset!alamat
Combo1.Text = Data1.Recordset!prodi
End Sub

General

Dim tombol As String

ADO (ActiveX Data Object) merupakan suatu Object Data yang mempunyai kemampuan Data
Definition, Data Manipulation dan Database Maintenance serta dapat untuk membangun
koneksi dengan beberapa jenis database. Untukmengakses database menggunakan ADO ada dua
fasilitas yang dapat dipakai yaitu
ADODC
ADODC adalah sebuah object sehingga dapat dilihat atau ditambahkan di toolbox. Untuk
menambahkan objek ini maka lakukan langkah sebagai berikut :
Klik menu Project, pilih Component (atau tekan Ctrl-T), tandai dengan memberi tanda cek pada
Microsoft ADO Data Control 6.0 (OLEDB). Akhiri dengan tekan tombol OK, maka pada
Toolbox akan muncul objek ADODC.
ADODB
Salah satu cara menghubungkan aplikasi dengan database melalui kode program, tanpa
menggunakan objek.

Database yang dapat dikoneksi dengan ADO selain Microsoft Access, dapat juga dengan
Foxpro, ODBC, SQLServer atau MySQL.
Koneksi database dengan ADODB
Di dalam Visual Basic, Object ADODB yang sering digunakan adalah ADODB.Connection dan
ADODB.Recordset. Untuk dapat membuat suatu variable dari ADODB ini kita harus terlebih
dahulu memilih references di dalam Visual Baic yaitu Microsoft ActiveX Data Object. Ikuti
langkah berikut
:
Pilih menu Project – References
Pilih Microsoft ActiveX Data Objects 2.1 Library – Klik OK
Module sering digunakan di dalam pendeklarasian Connection dan Recordset untuk penggunaan
database , sehingga Object Connection dan Recordset tersebut dapat digunakan pada semua
bagian di dalam project yang anda buat.

Connection digunakan untuk melakukan koneksi ke database yang dipilih dengan perintah
open ataupun mengeksekusi sintaks-sintaks SQL dengan perintah execute. Untuk membuka
koneksi ke database gunakan perintah open yang diikuti oleh connection string yang dapat
dihapalkan ataupun menggunakan bantuan seperti control ADODC atau file extension .UDL

Recordset digunakan untuk menampung data (bisa berasal dari 1/ lebih tabel) yang merupakan
hasil eksekusi perintah sql select, syntax:
select [nama kolom] from [nama tabel] where [kondisi]

Tambahkan Module pada program VB Anda (Project – Add Module), kemudian ketikkan kode
program koneksi database berikut di Module Anda
Public Con As ADODB.Connection
Public Sub OpenConnection()
Set Con = New ADODB.Connection
Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\dbAkademik.mdb;" & _
"Persist Security Info=False"
Con.CursorLocation = adUseClient
Con.Open
End Sub

Hasil dari koneksi di atas adalah Con akan membuka koneksi ke database dengan nama
dbAkademik.mdb yang terletak di folder aktif dbAkademik.mdb.
Contoh Program menggunakan ADODB
Berikut adalah contoh program olah data Mahasiswa di STMIK Duta Bangsa. Atur Form seperti
pada contoh gambar 9.8.
NIM akan diinput secara otomatis berdasarkan Program Studi, Jenjang, Tahun Masuk dan
urutan mahasiswa saat daftar ulang.
Jenjang Sarjana menawarkan dua program studi yaitu : Sistem Informasi dan teknik
Informatika. Jenjang Diploma 3 menawarkan dua program studi yaitu :Manajemen
Informatika dan Teknik Komputer.
Kita akan menggunakan MSFlexGrid untuk menmpilkan data. Cara menambahkan project
MSFlexGrid : Pilih menu Project – Components, Pilih Microsoft FlexGrid Control 6.0 – Klik
OK
Berikut tampilan Form yang digunakan :

Gambar 9.8 Program olah data mahasiswa dengan ADODB


Ketik kode program berikut :
Koneksi Database
Ketik kode program koneksi database berikut pada Module
Public Con As ADODB.Connection
Public rsMahasiswa As ADODB.Recordset
Public Sub OpenConnection()
Set Con = New ADODB.Connection
Con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\dbAkademik.mdb;" & _
"Persist Security Info=False"
Con.CursorLocation = adUseClient
Con.Open
End Sub

Kode program di Form_Load

Private Sub Form_Load()


OpenConnection 'Memanggil koneksi database dari Module

'Mengkoneksikan rsMahasiswa ke tabel tabel Mahasiswa


Set rsMahasiswa = New ADODB.Recordset
rsMahasiswa.Open "Select * From Mahasiswa", Con, adOpenStatic,
adLockOptimistic

'Memanggil sub TampilData


'Digunakan untuk menampilkan data di Grid
TampilData

End Sub

Kode program untuk mengatur Grid


Sub AturGrid()
Grid.Rows = 1
Grid.Cols = 5
Grid.ColWidth(0) = 500
Grid.ColWidth(1) = 1000
Grid.ColWidth(2) = 2000
Grid.ColWidth(3) = 2000
Grid.ColWidth(4) = 2000

Grid.TextMatrix(0, 0) = "No"
Grid.TextMatrix(0, 1) = "NIM"
Grid.TextMatrix(0, 2) = "Nama"
Grid.TextMatrix(0, 3) = "Alamat"
Grid.TextMatrix(0, 4) = "Program Studi"

End Sub
Kode program untuk menampilkan data di Grid

Sub TulisData()
Dim i As Integer
i = 0
Do While Not rsMahasiswa.EOF
i = i + 1
Grid.AddItem (i & vbTab & rsMahasiswa(0) & vbTab & _
rsMahasiswa(1) & vbTab & rsMahasiswa(2) & vbTab & _
rsMahasiswa(3))
rsMahasiswa.MoveNext
Loop
End Sub

Sub TampilData()
Set rsMahasiswa = New ADODB.Recordset
rsMahasiswa.Open "Select * From Mahasiswa " & _
"Order By NIM", Con, adOpenStatic, adLockOptimistic
AturGrid
TulisData
End Sub

Kode program Sub Rutin

Sub kosong()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
Combo1.Text = ""
End Sub

Sub siap()
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
Combo1.Enabled = True
End Sub

Sub tdksiap()
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
Combo1.Enabled = False
End Sub

Kode program Form Activate


Private Sub Form_Activate()
kosong
tdksiap
batal.Enabled = False
simpan.Enabled = False
tambah.SetFocus
End Sub
Kode program Tombol Tambah
Private Sub tambah_Click()
tombol = "TAMBAH"
siap
kosong
Text1.SetFocus
batal.Enabled = True
simpan.Enabled = True
tambah.Enabled = False
keluar.Enabled = False
ubah.Enabled = False
hapus.Enabled = False
End Sub

Kode program Tombol Simpan


Private Sub simpan_Click()
If tombol = "UBAH" Then
Set rsMahasiswa = New ADODB.Recordset
rsMahasiswa.Open "Select * From Mahasiswa where NIM =
'" & Text1.Text & "'", Con, adOpenStatic, adLockOptimistic
With rsMahasiswa
!NIM = Text1.Text
!prodi = Combo1.Text
!nama = Text2.Text
!alamat = Text3.Text
.Update
End With

End If

If tombol = "TAMBAH" Then


Set rsMahasiswa = New ADODB.Recordset
rsMahasiswa.Open "Select * From Mahasiswa", Con,
adOpenStatic, adLockOptimistic
With rsMahasiswa
.AddNew 'Menambahkan data baru
!NIM = Text1.Text
!prodi = Combo1.Text
!nama = Text2.Text
!alamat = Text3.Text
.Update
End With

End If

kosong
tdksiap
simpan.Enabled = False
batal.Enabled = False
tambah.Enabled = True
keluar.Enabled = True
ubah.Enabled = True
hapus.Enabled = True
TampilData
End Sub
Kode Program Tombol Batal

Private Sub batal_Click()


kosong
tdksiap
batal.Enabled = False
simpan.Enabled = False
keluar.Enabled = True
tambah.Enabled = True
ubah.Enabled = True
hapus.Enabled = True
tambah.SetFocus
End Sub

Kode Program Tombol Ubah


Private Sub ubah_Click()
tombol = "UBAH"
siap
Text1.SetFocus
End Sub

Kode Program Tombol Hapus

Private Sub hapus_Click()


tombol = "HAPUS"
siap
Text1.SetFocus
End Sub

Kode Program Tombol Keluar


Private Sub keluar_Click()
Unload Me
End Sub

Kode Program General Deklaration

Dim tombol As String

Kode Program Text1 Keypress

Private Sub Text1_KeyPress(KeyAscii As Integer)

Set rsMahasiswa = New ADODB.Recordset


rsMahasiswa.Open "Select * From Mahasiswa Where NIM = '" &
Text1.Text & "'", Con, adOpenStatic, adLockOptimistic

If KeyAscii = 13 Then 'Jika ditekan Enter


With rsMahasiswa
If tombol = "UBAH" Then
If .EOF Then
MsgBox "NIM " & Text1.Text & " belum ada"
Text1.SetFocus
Else

Text2.Text = !nama
Text3.Text = !alamat
Combo1.Text = !prodi
End If

ElseIf tombol = "HAPUS" Then


If .EOF Then
MsgBox "NIM " & Text1.Text & " belum ada"
Text1.SetFocus
Else
Text2.Text = !nama
Text3.Text = !alamat
Combo1.Text = !prodi

pesan = MsgBox("Apakah Anda yakin menghapus NIM " & _


Text1.Text & " ?", vbYesNo, "Hapus Data")
If pesan = vbYes Then
Set rsMahasiswa = New ADODB.Recordset
rsMahasiswa.Open "Select * From Mahasiswa where NIM = '"
& Text1.Text & "'", Con, adOpenStatic, adLockOptimistic

End If

End If
End If
End With
TampilData
End If

'hanya boleh diisi angka atau backspace


If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii =
vbKeyBack) Then
Beep
KeyAscii = 0
End If

End Sub

Anda mungkin juga menyukai