Part 1 | Part 2 | Part 3 | Part 4
Setelah terbengkalai sekian lama menunggu mood hehe... mari kita mulai membahas bagaimana proses CRUD pada VB.NET dan MySQL.
Pastikan udah baca dulu artikel sebelumnya yah No 1 s/d 3.
Kita akan membuat CRUD untuk tabel berikut:
Pertama-tama kita siapkan tombol-tombol pendukungnya, yaitu Save, Edit, Delete, Cancel, dan Exit.
Pada contoh di sini Rani buat tombol nya pakai ToolStrip Control.
Detail cara membuatnya lihat disini yah...
Tambahkan juga beberapa label, textbox dan datagridview seperti pada gambar berikut:
Tambahkan panel untuk menyimpan label dan textbox untuk input data, kemudian set property Dock = Top. Terakhir tambahkan datagridview dan set property Dock = Fill. Beri nama control-control seperti pada gambar.
Beres dengan UI, mari kita mulai dengan code behind.
Import MySqlClient dan System.Data:
Imports MySql.Data.MySqlClient
Imports System.Data
Deklarasikan sebuah objek koneksi dan sebuah variable string untuk menyimpan query di dalam Class Form (Rani kasih nama form nya frmClass)
Public Class frmClass
Dim conn As MySqlConnection
Dim SQL As String
End Class
Kemudian kita akan membuat sub procedure bernama Data_Load untuk menampilkan data ke dalam datagridview. Pastikan untuk menyimpan procedure ini di dalam class form. Pada sub procedure ini juga Rani menambahkan Try Catch sebagai error handling.
Sub Data_Load()
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
conn = New MySqlConnection()
conn.ConnectionString = "server=localhost;user id=root;" & _
"password=;database=datapos"
Try
If conn.State = ConnectionState.Closed Then conn.Open()
SQL = "Select classcode, classname From class"
myCommand.Connection = conn
myCommand.CommandText = SQL
myAdapter.SelectCommand = myCommand
myAdapter.Fill(myData)
With grdData
.DataSource = myData
.AllowUserToAddRows = False
.AllowUserToDeleteRows = False
.ReadOnly = True
.Columns(0).HeaderText = "Kode Kelas"
.Columns(1).HeaderText = "Nama Kelas"
.Columns(0).Width = 100
.Columns(1).Width = 250
End With
conn.Close()
Catch myerror As MySqlException
MessageBox.Show("Error: " & myerror.Message)
Finally
conn.Dispose()
End Try
End Sub
Kita perlu menampilkan data ke dalam grid saat pertama form dibuka, karena itu kita akan memanggil sub procedure Data_Load pada event Form_Load
Private Sub frmClass_Load(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Me.Load
Data_Load()
End Sub
Lanjuuut.... kita akan membuat procedure untuk membuat data baru. User akan memasukan data pada textbox kode dan nama, kemudian klik toolbar Save untuk menyimpan data baru ke database. Berikut code yang ditulis pada event tblSave_Click.
Private Sub tbrSave_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles tbrSave.Click
Dim myCommand As New MySqlCommand
conn = New MySqlConnection()
conn.ConnectionString = "server=localhost;user id=root;" & _
"password=;database=datapos"
Try
conn.Open()
SQL = "INSERT INTO class (classcode, classname) VALUES " & _
"('" & txtCode.Text & "', '" & txtName.Text & "')"
myCommand.Connection = conn
myCommand.CommandText = SQL
myCommand.ExecuteNonQuery()
MsgBox("Data baru tersimpan")
txtCode.Text = String.Empty
txtName.Text = String.Empty
Data_Load()
conn.Close()
Catch myerror As MySqlException
MessageBox.Show("Error: " & myerror.Message)
Finally
conn.Dispose()
End Try
End Sub
Sebuah message box (pesan) ditambahkan setelah proses insert sebagai penanda jika proses input data baru telah berhasil. Procedure Data_Load dipanggil lagi kemudian agar perubahan dapat ditampilkan di grid.
Mari kita coba dulu menjalankan form dan menginput sebuah data baru.
Belum beres, lanjut ke Part 2 yaa...
Tutorial VB.NET dan MySQL Lainnya
Lihat juga tutorial ini via youtube yah! ^_^
5 Comments
Kunjungi blog aku ya kak http://studyingeverything.blogspot.co.id/
xampp bukan database hehe...