Database aplikasi menggunakan SQL Statement in Visual Basic 6
Pada tutorial kali ini saya akan menjelaskan bagaimana cara memanipulasi data menggunakan SQL Statement di Visual Basic. Tujuan tutorial ini adalah agar pembaca bisa memahami bagaimana cara menggunakan SQL Statement untuk memanipulasi data di Visual Basic oleh karena itu tutorial ini dibuat se-jelas dan se-sederhana mungkin tetapi tidak mengesampingkan pemahaman pokok tentang operasi DML dengan SQL Statement.
Buat sebuah File Database menggunakan Microsoft Access, simpan di c:\Sample dengan nama DBSample.mdb
Buat sebuah table dengan nama Products dengan struktur sebagai berikut :
Masuk ke Visual Basic, buat sebuah project Standard.EXE simpan di c:\Sample dengan nama SQLDML.vbp
Tambahkan tiga buah Textbox : txtPid, txtDesc, dan txtPrice
Tambahkan tiga buah Label : lblPid, lblDesc, dan lblPrice
Tambahkan tiga buah Button : cmdSave, cmdUpdate, cmdDelete, cmdSearch
Tambahkan lagi empat buah button untuk navigasi record : cmdFirst, cmdPrev, cmdNext, cmdLast
Masuk code editor, deklarasikan dua buah variabel untuk koneksi Database dan Recordset
Dobel klik Form1, tambahkan kode program berikut :
Dobel klik button cmdSave, tambahkan kode program berikut :
Karena SQL Select Statement menghasilkan/mengembalikan satu atau lebih record maka perlu dideklarasikan sebuah variabel recordset baru yaitu rsproductsCari untuk menampung recordset hasil query pencarian
Dobel klik button cmdSearch, tambahkan kode Program berikut :
Dobel klik button cmdUpdate, tambahkan kode Program berikut :
Dobel klik button cmdDelete, tambahkan kode Program berikut :
Ini adalah kode Program untuk navigasi record ke posisi record pertama.
Dobel klik button cmdFirst, tambahkan kode Program berikut :
Kode Program untuk navigasi record ke posisi record sebelumnya. jika record sudah di posisi record pertama, maka pointer tetap akan diarahkan ke record pertama. kamu bisa ganti kode Program rsproduct.MoveFirst dengan rsproduct.MoveLast agar navigasi kembali ke record terakhir setelah berada pada record pertama.
Dobel klik button cmdPrev, tambahkan kode Program berikut :
Kode Program untuk navigasi record ke posisi record berikutnya. jika record sudah di posisi record terakhir, maka pointer tetap akan diarahkan ke record terakhir. kamu bisa ganti kode Program rsproduct.MoveLast dengan rsproduct.MoveFirst agar navigasi kembali ke record pertama setelah berada pada record terakhir.
Dobel klik button cmdNext, tambahkan kode Program berikut :
Kode Program untuk navigasi record ke posisi record terakhir.
Dobel klik button cmdLast, tambahkan kode Program berikut :
Kamu bisa Download Source Code Aplikasi ini disini. Semoga bermanfaat
sumber:http://easycomputertutorial.blogspot.com
- ProductID Text(20)
- Description Text(50)
- Price number(Double)
Koneksi dengan Database MS Access
Dim AccessConn As New ADODB.Connection
Dim rsProduct As New ADODB.Recordset
Set AccessConn = New ADODB.Connection
AccessConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\DBSample.mdb;Persist Security Info=False"
'kode program App.Path akan menghasilkan path dari file .exe aplikasi ini
'yaitu C:\Sample
'buka koneksi
AccessConn.Open
SQLStr = "select * from products"
Set rsProduct = New ADODB.Recordset
rsProduct.Open SQLStr, AccessConn, adOpenDynamic, adLockOptimistic, adCmdText
Menambah Data dengan SQL Insert Statement
Dim SQLStr As String
'deklarasi variabel SQLStr
'yang nantinya akan digunakan untuk perintah SQL
SQLStr = "insert into products (productid,description,price) " & _
"values('" & txtPid & "','" & txtDesc & "','" & txtPrice & "')"
'Execute SQL Command
AccessConn.Execute SQLStr, , cmdtypetext
'tampilkan pesan
MsgBox "Data telah tersimpan", vbInformation, "Informasi"
'refresh dataset rsproduct agar record baru langsung terlihat
rsProduct.Requery
'clear textbox
txtPid = ""
txtDesc = ""
txtPrice = ""
txtPid.SetFocus
Mencari Data dengan SQL Select Statement
Karena SQL Select Statement menghasilkan/mengembalikan satu atau lebih record maka perlu dideklarasikan sebuah variabel recordset baru yaitu rsproductsCari untuk menampung recordset hasil query pencarian
Dim SQLStr As String
Dim rsproductsCari As New ADODB.Recordset
'mencari product berdasarkan productid
SQLStr = "select * from products where productid = '" & txtPid & "'"
Set rsproductsCari = New ADODB.Recordset
rsproductsCari.Open SQLStr, AccessConn, adOpenDynamic, adLockOptimistic, adCmdText
If Not rsproductsCari.BOF And Not rsproductsCari.EOF Then
'jika data ada, tampilkan record pada textbox
txtPid = rsproductsCari!productid
txtDesc = rsproductsCari!Description
txtPrice = rsproductsCari!price
Else
'jika tidak ada, tampilkan pesan
MsgBox "Data tidak ditemukan", vbInformation, "Informasi"
'clear textbox
txtPid = ""
txtDesc = ""
txtPrice = ""
txtPid.SetFocus
End If
Mengedit Data dengan SQL Update Statement
Dim SQLStr As String
SQLStr = "update products set description='" & txtDesc & "'," & _
"price='" & txtPrice & "' where productid='" & txtPid & "'"
Set rsProduct = AccessConn.Execute(SQLStr, , cmdtypetext)
'refresh dataset rsproduct agar record baru langsung terlihat
rsProduct.Requery
'tampilkan pesan
MsgBox "Perubahan telah tersimpan", vbInformation, "Informasi"
'clear textbox
txtPid = ""
txtDesc = ""
txtPrice = ""
txtPid.SetFocus
Menghapus Data dengan SQL Delete Statement
Dim SQLStr As String
Dim msgresult As Byte
'deklarasi variabel msgresult
'digunakan untuk menangkap result dari pesan konfirmasi delete
msgresult = MsgBox("Hapus Data produk " & txtPid, vbYesNo + vbQuestion, "Confirm")
If msgresult = vbYes Then
SQLStr = "delete from products where productid='" & txtPid & "'"
Set rsProduct = AccessConn.Execute(SQLStr, , cmdtypetext)
'refresh dataset rsproduct agar record baru langsung terlihat
rsProduct.Requery
'clear textbox
txtPid = ""
txtDesc = ""
txtPrice = ""
txtPid.SetFocus
End If
Navigasi Record Dengan Kode Program
Ini adalah kode Program untuk navigasi record ke posisi record pertama.
On Error Resume Next
rsProduct.MoveFirst
'menampilkan data
txtPid = rsProduct!productid
txtDesc = rsProduct!Description
txtPrice = rsProduct!price
Kode Program untuk navigasi record ke posisi record sebelumnya. jika record sudah di posisi record pertama, maka pointer tetap akan diarahkan ke record pertama. kamu bisa ganti kode Program rsproduct.MoveFirst dengan rsproduct.MoveLast agar navigasi kembali ke record terakhir setelah berada pada record pertama.
On Error Resume Next
rsProduct.MovePrevious
If rsProduct.BOF Then
rsProduct.MoveFirst
End If
'menampilkan data
txtPid = rsProduct!productid
txtDesc = rsProduct!Description
txtPrice = rsProduct!price
Kode Program untuk navigasi record ke posisi record berikutnya. jika record sudah di posisi record terakhir, maka pointer tetap akan diarahkan ke record terakhir. kamu bisa ganti kode Program rsproduct.MoveLast dengan rsproduct.MoveFirst agar navigasi kembali ke record pertama setelah berada pada record terakhir.
On Error Resume Next
rsProduct.MoveNext
If rsProduct.EOF Then
rsProduct.MoveLast
End If
'menampilkan data
txtPid = rsProduct!productid
txtDesc = rsProduct!Description
txtPrice = rsProduct!price
Kode Program untuk navigasi record ke posisi record terakhir.
On Error Resume Next
rsProduct.MoveLast
'menampilkan data
txtPid = rsProduct!productid
txtDesc = rsProduct!Description
txtPrice = rsProduct!price
Kamu bisa Download Source Code Aplikasi ini disini. Semoga bermanfaat
sumber:http://easycomputertutorial.blogspot.com
Komentar