Anda di halaman 1dari 7

D3 UNGGULAN Universitas Budi Luhur

Tulisan ini memberikan gambaran umum tentang salah satu teknik mengunakan vb.net 2005 dengan
database mysql

I. KONEKSI
Sebelum kita dapat menggunakan data dari database, koneksi antara program dan database
harus dibuka lebih dulu.

Ada banyak cara untuk membuka koneksi, disini digunakan mysqlnetConnector, sebuah library
connector yang dibuat oleh mysql untuk menghubungkan aplikasi .net dengan database mysql.
Cara lain dapat menggunakan ODBC connector

Langkah-langkah membuka koneksi:

A. Install dan tambah referensi di vb.net


Agar vb dapat berhubungan dengan mysql, mysqlnetconnector harus sudah terinstall di
pc anda, alternatifnya, copykan file mysql.Data.dll ke dalam folder solution anda, lalu
klik kanan nama solution(pada solution explorer), pilih add reference-browse dan pilih
file tersebut.

Pada baris pertama dari setiap form yang menggunakan koneksi atau objek MySql,
tambahkan perintah

Imports MySql.Data.MySqlClient

B. Buat string koneksi

Public strconn As String = "server=[lokasi server]; uid=[user


mysql]; pwd=[password mysql]; database=[nama database];"

Keterangan :
-perintah diatas diketik dalam 1 baris
-ganti public dengan dim jika koneksi tidak bersifat global
[lokasi server]  ganti dengan ip server mysql, gunakan
localhost jika pada komputer sendiri
[user mysql]  ganti dengan nama user yang berhak
koneksi ke server mysql
[password mysql]  ganti dengan password yang valid
[nama database]  ganti dengan nama database yang valid

Contoh string koneksi:

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
2

berikut ini akan menghubungkan ke database lokal dengan nama user = root , password= root
dan nama database = barang

Public strconn As String = "server=localhost; uid=root; pwd=root;


database=barang;"

berikut ini akan menghubungkan ke database di server dengan ip


192.168.1.100 dengan nama user = tamu , password kosong dan nama
database = inventory

Public strconn As String = "server=192.168.1.100; uid=tamu; pwd=;


database=inventory;"

C. Buat objek koneksi, dan buka koneksi


Public conn As New MySqlConnection(strconn)

Koneksi dapat dibuka dengan perintah

conn.Open()

ada baiknya memasukkan perintah buka koneksi dalam blok try atau if, karena ada beberapa
kemungkinan error. Beberapa error umum ialah:

-mysql server tidak ditemukan (belum menyala


-username atau password salah
-koneksi sudah terbuka dan belum ditutup

Berikut adalah contoh dengan penanganan error

'jika koneksi tertutup


If conn.State = ConnectionState.Closed Then
Try
'buka koneksi
conn.Open()
'tangkap error mysql, jika ada ( ini hanya sebagian)
Catch mex As MySqlException
If mex.Number = 0 Then
Msgbox("Tidak bisa connect ke db", "no server")
ElseIf mex.Number = 1045 Then
Msgbox ("Salah user/pass mysql", "akses ditolak")
Else
Msgbox (mex.Number & mex.Message, "mysql error")
End If
'tangkap error umum
Catch ex As Exception
MsgBox(ex.Message)

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
3

End Try
End If

Perhatikan, bahwa pada contoh diatas, catch yang pertama menangkap error oleh mysql,
sedangkan catch yang kedua menangkap error umum. Keseluruhan blok hanya akan dijalankan
bila belum ada koneksi yang terbuka

Setelah koneksi tidak digunakan lagi, tutuplah koneksi dengan perintah

If conn.State = ConnectionState.Open Then


conn.Close()
End If

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
4

II. Menampilkan data


Untuk menampilkan data, ada 2 cara. Ditampilkan langsung dalam bentuk table, atau diambil
dengan data reader lalu dipindahkan isinya menggunakan perulangan

A. Bentuk Table
Bentuk table dapat langsung ditampilkan menggunakan DataGridView dari vb.

Komponen yang harus dibuat adalah

Objek DataGridView
Objek MySqlDataAdapter
Objek DataTable

Contoh :Ikuti langkah berikut

1. Tambahkan sebuah DataGridView pada form, berikan nama dgv_data

2. Tambahkan tombol , berikan nama btn_view_data

3. Pada event tombol, berikan code berikut

'buat objek adapter


Dim myadp As MySqlDataAdapter
'buat data tabel (agar data disusun tabel)
Dim dt As New DataTable
'buat perintah query disini
Dim query As String
query =”Perintah sql disini”
Try
'jalankan perintah baca
myadp = New MySqlDataAdapter(query, conn)
'isi data tabel
myadp.Fill(dt)
'pindahkan isi data tabel ke dgv_data
dgv_data.DataSource = dt
Catch ex As Exception
MsgBox(ex.Message)
End Try
(catatan: perintah diatas mengasumsikan objek conn untuk koneksi telah dibuat
dan koneksi telah dibuka)

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
5

B. Bentuk Row
Bentuk ini lebih leluasa untuk dimanipulasi (diubah) karena data diambil perbaris dalam
bentuk perulangan

Konponen yang harus dibuat:

Objek-objek yang dapat menampung hasil query (dapat berupa textbox,


ComboBox, label, button, dst)
Objek MySqlCommand
Objek MySqlDataReader

Contoh 1: (mengisi textbox)

Berikut ini diasumsikan bahwa objek conn untuk koneksi telah terbuka, dan kembalian dari query hanya
1 row (1 baris) dengan 3 field

„buat objek command


Dim mycmd as new MySqlCommand(query,conn)
„buat objek pembaca
Dim myread as MySqlDataReader
„jalankan query dan isi ke reader
myread = mycmd.ExecuteReader()

„cek keberadaan data


If myread.HasRows = True then
„baca datanya

myread.Read()
textbox1.text=myread.GetString(0)
textbox2.text = myread.GetUInt16(1)
textbox3.text = myread.GetString(“nama field disini”)

End if

„tutup myread
myread.close()

Perhatikan bahwa nilai myread dapat diambil sesuai dengan tipe datanya. Gunakan GetString untuk
String, GetUInt16 , GetUInt32, GetUInt64 untuk nilai angka (batasannya ialah short, long dan double).

Didalam tanda kurung dapat digunakan indeks (angka) sesuai dengan urutan dari kembalian query
dimulai dari 0 atau menggunakan nama field (diapit kutip)

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
6

Contoh 2: (mengisi combo)

Berikut ini diasumsikan bahwa objek conn untuk koneksi telah terbuka, dan kembalian dari query hanya
1 field dengan banyak baris (row)

„buat objek command


Dim mycmd as new MySqlCommand(query,conn)
„buat objek pembaca
Dim myread as MySqlDataReader
„jalankan query dan isi ke reader
myread = mycmd.ExecuteReader()

„cek keberadaan data


If myread.HasRows = True then

'kosongkan combo
comboBox.Items.Clear()

„baca datanya

While myread.Read
comboBox.Items.Add(myread.GetString(0))
End WhileEnd if

„tutup myread
myread.close()

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id
D3 UNGGULAN Universitas Budi Luhur
7

III. Memasukkan Data (perintah Insert)


Pada dasarnya, perintah insert, update, dan delete semua menggunakan objek yang sama, yaitu
MySqlCommand. Perbedaaan hanya pada perintah sql yang dikirim

Oleh VB, perintah sql untuk insert, update dan delete digolongkan sebagai nonQuery sehingga
syntax untuk eksekusi ialah

„buat command
Dim mycmd As New MySqlCommand(“Perintah SQL disini”, conn)
Try
„jalankan
mycmd.ExecuteNonQuery()
Catch ex As MySqlException
MsgBox(ex.Message,"insert data gagal")
End Try

Juga dapat digunakan IF untuk mencek apakah query berhasil, karena perintah
mycmd.ExecuteNonQuery()
Mengembalikan nilai Integer 1 (satu) bila sukses dan 0 (nol) bila gagal. Perhatikan contoh berikut

„buat command
Dim mycmd As New MySqlCommand(“Perintah SQL disini”, conn)
Try
„jalankan
If mycmd.ExecuteNonQuery()=1 then
MsgBox("insert data berhasil")
End if
Catch ex As MySqlException
MsgBox(ex.Message,"insert data gagal")
End Try

IV. Update Data dan delete data


Sama seperti insert data, syntax yang digunakan sama, yang berbeda hanya perintah SQL nya
saja.

Tutorial singkat VB.NET dan Mysql Joko Christian, S.Kom


jchristian@bl.ac.id