You are on page 1of 3

116

KNOW-HOW

CODING

03/2010

KONEKSI VB.NET DENGAN MYSQL


Bagaimana membuat aplikasi VB.Net dengan The worlds most popular open source database, MySQL?
Windra Swastika APLIKASI database VB.Net, umumnya dibuat dengan menggunakan database server MS-SQL Server atau MS-Access. Semuanya merupakan produk berbayar dari Microsoft, dan cukup kompatibel satu dengan yang lainnya. Opsi lain untuk membangun aplikasi database dengan menggunakan VB.Net adalah menggunakan database server gratis, yaitu MySQL. Versi terakhir yang paling stabil dari MySQL (pada saat tulisan ini dibuat) adalah versi 5.1, yang dapat di-download dengan gratis pada alamat http://dev.mysql.com/downloads/. Namun untuk membuat aplikasi VB.Net dengan memanfaatkan database yang ada di MySQL, kita memerlukan suatu tool/library sebagai penghubung (connector) yang menghubungkan VB.Net dengan MySQL. Pada artikel ini, kita akan menggunakan Connector/NET yang merupakan salah satu solusi terbaik untuk menghubungkan .Net dengan database MySQL di antara tool yang lain. Connector/NET juga dapat di-download dengan gratis pada alamat http://dev.mysql.com/downloads/connector/net/. Versi terakhir dari Connector/NET adalah versi 6.2.2 yang tersedia dalam 3 pilihan, yaitu versi noinstall, source code dan Windows installer. Cara termudah untuk melakukan proses instalasi adalah dengan men-download versi Windows installer (yang berukuran 5.9 MB), lalu menjalankannya.

Membuat Koneksi
Sebelum membuat aplikasi yang sebenarnya, kita perlu melakukan uji coba koneksi antara VB.Net dengan MySQL. Langkahlangkahnya adalah: 1. Kita buat sebuah project baru di VB.Net. (Gambar 2) 2. Sebelum kita dapat menggunakan Connector/NET dengan VB.Net, kita perlu menambahkannya ke dalam project yang kita buat. Caranya adalah lewat menu Project >> Add Reference. Pilih tab Browse, dan arahkan ke tempat melakukan instalasi Connector/NET. File yang kita pilih adalah MySQL. Data.dll. (Gambar 3) 3. Pada Form, kita perlu menyiapkan beberapa textbox untuk mengatur kongurasi koneksi. Kongurasi yang perlu diatur adalah server, username, password, dan database. Bentuk form untuk mengatur kongurasi ini adalah seperti pada gambar 4. Pada form, ada 4 buah komponen textbox yang bernama txtServer, txtUserName, txtPassword, txtDatabase, serta dua buah button bernama cmdLogin dan cmdCancel. 4. Untuk source code, koneksinya diawali dengan import:
Imports MySql.Data.MySqlClient

5. Dilanjutkan dengan deklarasi koneksi dengan menggunakan class MySqlConnection. Class MySqlConnection ini dapat dikenali karena kita telah menyertakan referensi MySQL. Data.dll:
Public Class Form1 Dim conn As MySqlConnection

6. Pada event click button login, kita melakukan koneksi database MySQL. Yang perlu didenisikan untuk melakukan koneksi database adalah property ConnectionString. Pada ConnectionString, kita perlu mendenisikan nama server, user id, password dan database yang hendak dikoneksikan:
Private Sub cmdLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdLogin.Click
Gambar 1. Proses instalasi Connector/NET 6.1.3.

03/2010

CODING

KNOW-HOW

117

create database testkoneksi;

Gambar 2. Membuat project baru di VB.Net

Cara lain, adalah dengan memanfaatkan aplikasi MySQL Query Browser, yang merupakan tool GUI untuk mengolah database pada MySQL. Aplikasi ini dapat di-downloadpada alamat: http://dev.mysql.com/downloads/gui-tools/ 5.0.html. 9. Setelah database sukses dibuat, kita dapat menjalankan program VB.Net untuk menguji apakah koneksi dapat dibuat atau tidak. Kongurasi standar yang kita masukkan adalah: Server: localhost, Username: root, Password: [kosong], Database: testkoneksi. (Gambar 6) 10.Jika koneksi sukses, maka akan muncul tampilan bahwa koneksi berhasil dilakukan. (Gambar 7)
Gambar 3. Menambahkan referensi Connector/NET.

Query Data dari VB.Net


Saat membuat koneksi, kita memanfaatkan Class MySqlConnection. Untuk mengolah data, kita memerlukan tiga class lainnya, yaitu: 1 .MySqlCommand. Class ini digunakan digunakan untuk menerima query atau statement yang kemudian dikirimkan pada MySQL. Setelah query diterima oleh objek MySqlCommand, eksekusi akan dilanjutkan oleh objek MySqlDataAdapter. 2. MySqlDataAdapter. Class ini menjadi penghubung antara class MySqlConnection dan class DataTable. MySqlDataAdapter dapat meng-query sebuah database, kemudian me-load informasi hasilnya pada DataTable. Pada class ini juga, kita dapat mem-bind data control dengan data pada MySQL sehingga data control dapat secara otomatis terisi dengan data sesuai dengan query yang diberikan. 3. DataTable. Class ini digunakan untuk menampung isi dari sebuah query. Sebelumnya, kita akan membuat sebuah tabel yang dilengkapi dengan data dummy. Data ini, nantinya akan kita tampilkan dengan menggunakan query melalui VB.Net:
CREATE TABLE user (UserID char(20), Password char(40), Nama char(30), TanggalLahir date, JenisKelamin char(1)); INSERT INTO user VALUES (Huwey,Passkwak123,Bebek Kwak,2004-02-10,M);

Gambar 4. Form untuk melakukan koneksi database.

conn = New MySqlConnection() conn.ConnectionString = server= & txtServer.Text & ; _ & user id= & txtUsername.Text & ; _ & password= & txtPassword.Text & ; _ & database= & txtDatabase.text

Try conn.Open() MessageBox.Show(Connection Opened Successfully) conn.Close() Catch myerror As MySqlException MessageBox.Show(Error Connecting to Database: & myerror.Message) Finally conn.Dispose() End Try End Sub

Proses koneksi yang dilakukan merupakan proses yang rawan kesalahan, seperti misalnya ketika MySQL belum diaktifkan, user name dan password tidak sesuai, database tidak ditemukan, dan sebagainya. Untuk itu, kita perlu melakukan pencegatan dengan blok Try Catch Finally. Dengan demikian, jika terjadi kesalahan, pencegatan dapat dilakukan tanpa harus keluar dari program. 7. Untuk button cancel, kita berikan pencegatan agar program berhenti:
Private Sub cmdCancel_Click(ByVal sender As System. Object, ByVal e As System.EventArgs) Handles cmdCancel. Click Application.Exit() End Sub

Gambar 5. Membuat database melalui console.

8. Hingga tahap ini, pembuatan aplikasi untuk melakukan koneksi dengan MySQL telah selesai. Namun, sebelum mencoba apakah koneksi dapat dilakukan, kita perlu untuk membuat database pada MySQL terlebih dulu. Cara untuk membuat database adalah melalui MySQL console (MySQL. exe), dan mengetikkan perintah SQL. (Gambar 5):

Gambar 6. Menguji koneksi.

Gambar 7. Koneksi telah sukses.

118

KNOW-HOW

CODING

03/2010

& user id=root; _ & password=; _ & database=testkoneksi

Try conn.Open() Try myCommand.Connection = conn myCommand.CommandText = SQL

myAdapter.SelectCommand = myCommand myAdapter.Fill(myData)


Gambar 8. Mengeksekusi perintah melalui MySQL Console.

dgvStatus.DataSource = myData dgvStatus.AutoSizeRowsMode = DataGridViewAutoSize

INSERT INTO user VALUES (Duwey,kwek222,Bebek Kwek,2005-04-1,M); INSERT INTO user VALUES (Louie,5543kwik,Bebek Kwik,2004-8-21,M); INSERT INTO user VALUES (Daisy,t1t1,Tante Desi,20035-12,F); INSERT INTO user VALUES (Donald,b3b3kt4t4,Paman Donal,2002-03-5,F); INSERT INTO user VALUES (Della,d3lla,Tante Della,2004-06-17,F);

RowsMode.AllCells Catch myerror As MySqlException MsgBox(There was an error reading from the database: & myerror.Message) End Try Catch myerror As MySqlException MessageBox.Show(Error connecting to the database: & myerror.Message) Finally If conn.State <> ConnectionState.Closed Then conn.Close() End Try End Sub End Class

Perintah SQL di atas dapat diketikkan melalui MySQL Console ataupun MySQL Query Browser. Jika perintah di atas berhasil, maka akan terbentuk tabel yang bernama user dengan 6 record di dalamnya. (Gambar 8) Setelah data berhasil disimpan dalam tabel user, kita membuat proyek baru yang tujuan akhirnya adalah mengeksekusi query pada database testkoneksi dengan query sederhana, serta menampilkan hasil query tersebut pada aplikasi VB.Net. Langkah-langkahnya adalah sebagai berikut: 1. Buat proyek baru dengan dua buah komponen, yaitu DataGridView dengan nama dgvStatus, dan sebuah button untuk me-refresh data dengan nama btnRefresh. 2. Pada awal source code, kita tambahkan statement import:
Imports MySql.Data.MySqlClient Imports System.Data

4. Jika program dijalankan, maka tampilan yang didapatkan adalah seperti pada gambar 10.

Penutup
Dengan kemampuan untuk mengeksekusi query, maka pengolahan data pada tabel dapat dengan leluasa dilakukan (mengingat semua perintah pengolahan data dapat dilakukan dengan perintah SQL). Kita dapat mengembangkan aplikasi ini agar menjadi aplikasi yang dapat melakukan update, insert atau delete data. Semoga berguna.
Windra Swastika adalah dosen tetap Program Studi Sistem Informasi, Universitas Ma Chung

3. Inti dari program ini adalah pada button refresh yang digunakan untuk menampilkan data query ke grid. Source code-nya adalah sebagai berikut:
Public Class Form1

Private Sub btnRefresh_Click(ByVal sender As System. Object, ByVal e As System.EventArgs) Handles btnRefresh. Click Dim conn As New MySqlConnection Dim myCommand As New MySqlCommand Dim myAdapter As New MySqlDataAdapter Dim myData As New DataTable Dim SQL As String
Gambar 9. Rancangan form untuk menampilkan hasil query.

Gambar 10. Tampilan data.

LEBIH LANJUT
SQL = SELECT * FROM user conn.ConnectionString = server=localhost; _

http://www.vbmysql.com/articles/vbnet-mysql-tutorials/