Wednesday, March 8, 2017

Koneksi VB ke MySQL dengan VB MySQL Direct

Hallo para sahabat SB semua!!!

Pada kesempatan lalu kita sudah membahas mengenai bagaimana cara mengoneksikan Project Visual Basic terhadap database MySQL. Namun, koneksi yang digunakan menggunakan driver MySQL Connector ODBC. Kali ini kita akan membagikan sedikit pengetahuan kita untuk sahabat semua tentang bagaimana mengoneksikan dengan cara yang berbeda.
Pada kesempatan kita kali ini, driver yang kita gunakan bernama VB MySQL Direct versi 1.0.

Kenapa mengoneksikan VB ke MySQL menggunakan VB MySQL Direct perlu kita informasikan? karena setelah mencobanya, sahabat-sahabat semua akan mengetahui perbedaan antara koneksi menggunakan driver MySQL Connector ODBC dengan VB MySQL Direct. Sedikit bocoran, berdasarkan percobaan yang dilakukan penulis, eksekusi data (INSERT, DELETE, UPDATE, SELECT) menggunakan VB MySQL Direct ternyata lebih cepat dibandingkan dengan MySQL Connector ODBC. Sehingga, ketika kita akan menampilkan data dalam jumlah banyak (misalkan lebih dari 1000 baris) maka sahabat-sahabat SB akan benar-benar merasakan perbedaan kecepatan dalam menampilkan data.

Dengan adanya satu kelebihan tersebut, driver VB MySQL Direct layak untuk mendapatkan sedikit perhatian. Lalu apakah ada kelebihan yang lain? Untuk sementara ini penulis baru mendapatkan satu kelebihan tersebut. Namun, hal tersebut sudah menjadi nilai plus melihat pentingnya seorang Application Developer menciptakan suatu aplikasi yang dapat menyajikan data dengan cepat.

Lantas, bagaimana cara mengoneksikan Project Visual Basic kita menggunakan VB MySQL Direct? Kita ikuti langkah-langkah di bawah ini.

Pertama, download dan install terlebih dahulu driver VB MySQL Direct melalui link DI SINI.

Selanjutnya, buatlah project baru yang akan kita koneksikan ke MySQL dengan VB MySQL Direct. Project dapat berupa project baru atau project lama yang sebelumnya menggunakan cara koneksi yang lain. Namun, pada kesempatan ini akan dijelaskan dengan menggunakan project baru. Sahabat SB dapat menerapkannya juga pada project yang sebelumnya sudah sahabat buat.

Setelah project siap dan terbuka, tambahkan referensi driver VB MySQL Direct melalui menu Project -> References.

Tambahkan ListBox pada Form1 kemudian ketik kode di bawah ini pada Form1:

Public Koneksi As New MYSQL_CONNECTIONPublic RC As New MYSQL_RSPublic SQL As String
Private Sub Buka()    Set RC = New MYSQL_RS    RC.OpenRs SQL, Koneksi, adOpenDynamic, adLockBatchOptimisticEnd Sub
Function Tutup() As Boolean    If Tutup = True Then        RC.CloseRecordset        Koneksi.CloseConnection        Koneksi = Nothing    End IfEnd Function
Private Sub Form_Load()    NmServer = "localhost"          'IP Mysql    NmDB = "latihan"           'Nama Database    NmUsr = "root"            'Login Mysql    NmPwd = "admin"      'Password Mysql    NmPort = "3306"         'Port Mysql        Set Koneksi = New MYSQL_CONNECTION    Koneksi.OpenConnection NmServer, NmUsr, NmPwd, NmDB, NmPort    Koneksi.CursorLocation = adUseClient        If Koneksi.State = MY_CONN_CLOSED Then        MsgBox "Ada kesalahan dengan server, periksa apakah server sudah berjalan!", vbExclamation, "Fatal error"    End If
    'AMBIL DATA    SQL = "select*from t_siswa"    Buka        Do While Not RC.EOF            List1.AddItem RC.Fields("id") & " | " & RC.Fields("nama") & ", " & RC.Fields("alamat")        RC.MoveNext        Loop    TutupEnd Sub

Pada contoh kode di atas, kita menggunakan MySQL dengan asumsi:
  • MySQL berada di lokal, sehingga Nama Server adalah localhost.
  • Nama Database adalah latihan
  • Username MySQL adalah root
  • Password MySQL adalah admin
  • Nomor Port MySQL adalah 3306

Jika sahabat memiliki database MySQL dengan username, password, dan database yang berbeda, bisa sahabat ganti dengan data yang sesuai pada MySQL di komputer sahabat.

Penjelasan kode menurut penulis:

Public Koneksi As New MYSQL_CONNECTIONPublic RC As New MYSQL_RSPublic SQL As String

Kode di atas merupakan awal deklarasi variabel Koneksi, RC, dan SQL

Private Sub Buka()    Set RC = New MYSQL_RS    RC.OpenRs SQL, Koneksi, adOpenDynamic, adLockBatchOptimisticEnd Sub

Kode di atas, digunakan untuk membuka database MySQL dan melaksanakan kode perintah yang tertulis pada variabel SQL.

Function Tutup() As Boolean    If Tutup = True Then        RC.CloseRecordset        Koneksi.CloseConnection        Koneksi = Nothing    End IfEnd Function

Kode di atas, digunakan untuk menutup atau memutus koneksi project dengan database yang masih terhubung.

NmServer = "localhost"NmDB = "latihan"NmUsr = "root"NmPwd = "admin"NmPort = "3306"

Kode di atas, merupakan deklarasi untuk setting koneksi.

Set Koneksi = New MYSQL_CONNECTIONKoneksi.OpenConnection NmServer, NmUsr, NmPwd, NmDB, NmPortKoneksi.CursorLocation = adUseClient

Kode di atas, digunakan untuk membuka atau menghubungkan koneksi antara project dengan database MySQL.

If Koneksi.State = MY_CONN_CLOSED Then
    MsgBox "Ada kesalahan dengan server, periksa apakah server sudah berjalan!", vbExclamation, "Fatal error"
End If

Kode di atas, digunakan untuk memeriksa kondisi koneksi antara project dengan database MySQL apakah sudah terkoneksi dengan baik atau mengalami kegagalan.

SQL = "select*from t_siswa"Buka    Do While Not RC.EOF        List1.AddItem RC.Fields("id") & " | " & RC.Fields("nama") & ", " & RC.Fields("alamat")    RC.MoveNext    LoopTutup

Kode di atas, digunakan untuk mengambil data dari database latihan yang terdapat pada tabel t_siswa yang selanjutnya ditampilkan pada ListBox.

Selanjutnya, kita jalankan project dan lihat hasilnya.

Gimana? mudahkan?

Jika sahabat masih mengalami kesulitan, sahabat dapat mempelajari contoh project yang sudah siap dibagikan melalui link yang terdapat pada tengah artikel ini. Password bisa sahabat dapatkan pada akhir artikel.

Kritik dan saran yang membangun sangat kami harapkan dari sahabat semua. Berikan masukan sahabat melalui komentar. Terima kasih atas kunjungannya dan kita akan jumpa lagi pada informasi berikutnya.

Password: suruhbelajar.blogspot.com
Share:

1 komentar:

  1. kalau mau menampilkan di msflegrid caranya bagaimana bang?

    ReplyDelete

Kritik dan saran yang membangun kami harapkan!

Recent Posts

Unordered List

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  • Aliquam tincidunt mauris eu risus.
  • Vestibulum auctor dapibus neque.

Blog ini sangat membantu bagi anda?