Koneksi Visual Basic 6 Ke MySQL

Sesuai janji saya di artikel ini, saya akan menulis tentang bagaimana aplikasi Visual Basic 6 anda terkoneksi dengan MySQL. Saya beranggapan anda sudah belajar tentang dasar-dasar Visual Basic 6. Artikel ini hanya akan membahas tentang bagaimana Visual Basic 6 dapat berkomunikasi aplikasi database MySQL.

Buatlah prosedur baru di form MDI anda atau di Module (dan pastikan kalau di Module, prosedur anda adalah Public sehingga dapat dipanggil dari form utama anda). Berikan nama prosedur itu yang mewakili dengan koneksi anda. Misalnya, buat koneksi.
Prosedur yang saya buat adalah sebagai berikut:

Private Sub buat_koneksi()
Dim ConnString As String
Dim db_name As String
Dim db_server As String
Dim db_port As String
Dim db_user As String
Dim db_pass As String
'//error traping
On Error GoTo buat_koneksi_Error
'/isi variable
db_name = "databaseku"
db_server = "localhost" 'ganti jika server anda ada di komputer lain
db_port = "3306"    'default port is 3306
db_user = "root"    'sebaiknya pakai username lain.
db_pass = "password_anda"
'/buat connection string
ConnString = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & db_server & ";DATABASE=" & db_name & ";UID=" & db_user & ";PWD=" & db_pass & ";PORT=" & db_port & ";OPTION=3"
'/buka koneksi
With Conn
    .ConnectionString = ConnString
    .Open
End With
'___________________________________________________________
On Error GoTo 0
Exit Sub
 
buat_koneksi_Error:
    MsgBox "Ada kesalahan dengan server, periksa apakah server sudah berjalan !", vbInformation, "Cek Server"
End Sub

Untuk memanggil prosedur itu, cukup panggil di form utama anda (atau form dimana anda mau memulai koneksi anda) dengan mengetik

call buka_koneksi

atau

buka_koneksi

saja.

Dan jangan lupa untuk membuat object Conn dulu dan biasanya variable Conn ini dibuat secara Public sehingga bisa dipanggil dimana saja. Biasaya saya buat disuatu Module yang isinya adalah koleksi variable Public. Nyatakan variable tersebut dengan menuliskan:

Public Conn                 As New ADODB.Connection

Dan seperti biasa, ketika anda menutup aplikasi, anda harus menutup dulu koneksi anda ke MySQL. Biasanya prosedur tutup koneksi ini saya taruh di blok MDIForm_Unload.

If Conn.State = adStateOpen Or Conn.State = adStateConnecting Then
   Conn.Close
   Set Conn = Nothing
End If

Nah, itu bagian pertama dalam membuat aplikasi Visual Basic 6 dan MySQL, untuk selanjutnya kita akan berdiskusi tentang cara membuka tabel-tabel yang ada di MySQL.

Artikel-artikel Yang Berhubungan Dengan Artikel Ini

55 Komentar

Membuka Data Server MySQL | Edi Susanto dot Com  on June 29th, 2008

[...] membahas tentang koneksi Visual Basic ke MySQL, sekarang kita akan mendiskusikan tentang cara membuka data dari server setelah kita [...]

Perpustakaan Connection Strings | Edi Susanto dot Com  on February 5th, 2009

[...] asing lagi. Ya, dengan sebaris teks yang dibaca aja udah bikin pusing ini, kita dapat melakukan koneksi ke database server kita. Karena saya selalu menggunakan Visual Basic sebagai andalan saya di [...]

Ade  on February 23rd, 2009

Salam kenal Pak Edi

Saya mau tanya tentang sintak diatas, pada sintak ConnString = “DRIVER={MySQL ODBC 3.51 Driver};SERVER=” & db_server & “;DATABASE=” & db_name & “;UID=” & db_user & “;PWD=” & db_pass & “;PORT=” & db_port & “;OPTION=3″

Di komputer saya sintaknya error !

Mohon bantuannya …

Bart. Edi  on February 23rd, 2009

@Ade: Apakah Connector MyODBC nya udah di instal?

Ade  on February 23rd, 2009

Belum …

Harus instal Connector MyODBC dulu ?

Bart. Edi  on February 23rd, 2009

@Ade: Iya mas Ade, anda harus punya MyODBC terintal dulu, bisa di download di situs http://www.mysql.com secara gratis koq, karena string connection string itu membuka driver MyODBC.

hipni  on March 4th, 2009

sudah saya instal semua, kenapa ya tidak bisa konek juga

Bart. Edi  on March 4th, 2009

@hipni: Anda memakai MyODBC versi berapa pak? Kalo versi yang 5.1 string refer ODBC nya harus di rubah menjadi DRIVER={MySQL ODBC 5.1 Driver} dst… Dan juga coba di cek apabila anda menggunakan user selain root, apakah user itu udah dibuat dan database schema udah di attach dan di grant ke user itu… semoga membantu.

cool_dan  on March 10th, 2009

koneksi mysql tanpa perlu odbc.. langsung ke cool-dan.blogspot.com

artikel terakhir cool_dan | Menampilkan Gif Animasi di VB

aditio setiawan  on March 24th, 2009

pak saya mau tanya, ada masalah saat saya buat program vb dengan mysql di komputer saya jalan tetapi ketika di buat file setup (Langsung install) dan diistall dikomputer teman saya tidak bisa jalan

Bart. Edi  on March 25th, 2009

@aditio setiawan: apakah di komputer teman anda, myODBC nya udah diinstal? Dan jika menggunakan user selain root, apakah sudah di siapkan di databas lokal nya?

Riyanto  on April 8th, 2009

Untuk lebih jelasnya bisa beli buku Koneksi Database Menggunakan ODBC dari elek media komputindo

Hasannudin  on April 24th, 2009

Artikel Anda sangat membantu dalam menyelesaikan tugas saya di kampus. Thank you very much…

Bart. Edi  on April 24th, 2009

@Hasannudin: Sama-sama pak, saya senang artkel saya sedikit bermanfaat.

elly  on April 25th, 2009

pak bisa tanya ga gimana contoh function di modul

Bart. Edi  on April 25th, 2009

@elly: maaf maksudnya function apa ya?

vegy  on June 5th, 2009

salam kenal mas.
saya punya web yang terhosting di 000webhost.com.
saya ingin menampilkan database nya lewat VB.. tapi kenapa selalu erorr ya…
saya sudah menggunakan skrip di artikel ini tetep tidak mau..
pada waktu memasukan host, user, pass, pada driver ODBC ketika meng klik Database nya. Erorr..
mohon bantuannya???

Bart. Edi  on June 5th, 2009

@vegy: setahu saya mysql belum bisa di sambungkan secara langsung dari lokal ke database yang di webserver, kita harus memakai web service…

vegy  on June 6th, 2009

begitu ya mas… hehehe… maklum aku orang awam…
ada ga cara lain supaya tidak memakai web sercive..

terimakasi atas informasinya..

anto  on June 10th, 2009

pak edi,saya mo tnya.saya lg buat program client/server. tp sya mau buat koneksinya dinamis.jadi waktu progrm di eksekusi yg tampil dulu itu form koneksi yang berisi,text box ip address,textbox database,textboxusername,textboxpasswrod.
bagaimana caranya supaya yang di textbox itu bisa masuk ke fungsi koneksi yang saya buat.
Sub koneksi(server as string,db as string,user as string, pass as string)
ConnString = “DRIVER={MySQL ODBC 3.51 Driver};SERVER=” & server & “;DATABASE=” & db & “;USERNAME=” & user & “;PASSWORD=” & pass & “;PORT=3;OPTION=3?
end sub
mohon bantuannya mas,tolong kirimkan ke alamat email saya yah.terima kasih mas edi

ekoyuni  on June 10th, 2009

Saya mau tanya tentang sintak diatas, pada sintak ConnString = “DRIVER={MySQL ODBC 3.51 Driver};SERVER=” & db_server & “;DATABASE=” & db_name & “;UID=” & db_user & “;PWD=” & db_pass & “;PORT=” & db_port & “;OPTION=3?
OPTION=3 ini untuk apa ?
atau sama dengan name conection
soalnya yang di odbc kan sudah saya kasih nama

Bart. Edi  on June 10th, 2009

@ekoyuni: dengan string ini, kita ngga perlu menyetting ODBC kita, jadi ngga perlu repot2 waktu kita deploy nanti.

Menambah Baris Data Baru | Edi Susanto dot Com  on June 18th, 2009

[...] anda ke database, artikel lengkap tentang obyek koneksi ke database dapat anda baca di artikel ini. Misalnya obyek koneksi kita namai dengan [...]

n4all  on July 6th, 2009

makasih ya atas artikelx nie bermanfaat banget buat projek UAS aq…

mau tanya nie…
gimana cara untuk client bisa akses aplikasi program yang qt bwt apakah dalam client tuch perlu instal mysql..????bls ya…???

Bart. Edi  on July 6th, 2009

@n4all: Ngga perlu, di client Anda cukup instal MyODBC saja, untuk mengkoneksikan diri ke komputer yang telah terinstall MySQL database nya…

andri  on August 15th, 2009

mas, mau tanya.. saya pernah lihat program aplikasi SMS gateway menggunakan VB en koneksi dengan mySQL, trus ada juga my quick sql di dalamnya, ada juga navicat yang buat tabel database, saya mau tanya klo my quick sql tu buat apa, trus gmana caranya aq bs dpt my quick sql ? thx

haza  on August 24th, 2009

makasih ya pak edi..
artikelnya berguna banget buat sya.

pak kalo bleh tanya, saya membuat tugas akhir menggunakan vb dan mysql..
ad ga tutor ato syntax dasar dari vb dan mysql yang dapat membantu saya agar semua fungsi yang dapat befungsi dan saling terkoneksi..
soalnya saya masih kurang sekali ilmunya tentang vb.. tapi saya berani mengambil tugas akhir mnggunkan vb karena saya ingin memperdalam ttg vb… trima kasih ya pak… kalo bleh refrensi,link,ato apa aj yang bisa saya pelajari..

Muhammad Nurdin  on August 25th, 2009

salam knal mas.. nama saya muhammad nurdin.
saya pernakh membuat aplikasi client/server menggunakan visual basic 6.0 + MySQL Server 5.0 dan ODBC Driver 5.1

saat saya mencoba koneksi pada dua komputer yang terhubung peer to peer,aplikasi pada sisi client tidak mau konek ke mysql yang saya install di sisi server.

apakah ada yang salah pada connection string yang saya buat?
berikut connection string yang saya buat :
“Driver={mySQL ODBC 5.1 Driver};Server=localhost;Database=test;Uid=username;Pwd=password;Port=3306;Option=4;”

apakah karna saya tidak menggunakan fungsi :
“db.Cursorlocation = adUseClient”
sebelum membuka koneksi atau karna option yang saya gunakan “option=4″ pada connection string yang saya buat?

mohon bantuannya dan penjelasannya.. terima kasih.

Bart. Edi  on August 25th, 2009

@Muhammad Nurdin: MyODBC sudah terinstal?

Muhammad Nurdin  on August 26th, 2009

sudah mas.. saya pake MyODBC 5.1
saya mendapatkan solusi dari teman seperti ini :

Coba cek hak akses user root di Command Line Mysql:
mysql> SHOW GRANTS;
jika tidak terdaftar, bisa gunakan perintah ini untuk memberi hak akses:
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root’@'localhost’;

apa itu akan membantu?

Bart. Edi  on August 26th, 2009

@Muhammad Nurdin: “Driver={mySQL ODBC 5.1 Driver};Server=localhost;Database=test;Uid=username;Pwd=password;Port=3306;Option=4;” di Uid dan Pwd udah di ganti password dan user mysql anda? coba dulu pake user: root.
Untuk memanage MySQL dengan mudah, gunakan saja GUI manager nya, anda bisa download di: http://dev.mysql.com/downloads/gui-tools/5.0.html

Muhammad Nurdin  on August 28th, 2009

sudah saya ganti uid=root pwd=”" [standar]

terima kasih atas bantuannya mas.

tika  on September 2nd, 2009

mas mau tanya donk .. klo mau menampilkan data dari database ke text box menggunakan syntax sql gimana ? thx .

deny  on September 30th, 2009

mau tanyak mi mas,bisa gak ya mas hasil aplikasi dari visual basic6 dijadikan web server,misalkan kita pengen pangil/buka secara online dengan didari luar dengan misal 192.168.2.45, nanti aplikasi kita bs kebuka dari luar,bs dijelasin mas,klo pakai database apa pakai acces bs mohon petunjuknya

Bart. Edi  on October 1st, 2009

@deny: kalo anda memakai acces, di taruh aja di folder share di LAN lalu arahkan connection string anda ke share folder tersebut.

dana  on October 12th, 2009

mas maksude web service tuh gmn ya…??

vb gak bs ya databasenya di komp laend/internet..?? carane pie..??

Bart. Edi  on October 12th, 2009

@dana: buat satu API khusus untuk connect kan 2 mysql database server, bisa juga pake kendaraan PHP, terus vb baca hasil pHP tersebut….

deny  on November 5th, 2009

mau nanya nih mas,klo mau bikin program ASP.net dari visual studio 2005 kok g ada ya mas asp nya,apa ada tambahan componen lainnya,mohon petunjuknya ya mas,thnks

deny  on November 5th, 2009

deny lg ni mas,maklum jd pelangan pertayaan hehehehe…
menangapi pertanyaan saya di bulan september,mengenai aplikasi saya vb,apa perlu setinggan poxy apa g ya mas, apa perlu peng isntallan di komputer tersebut???,apa dengan connection string langsung bs di acces ya mas,moleh minta no tlp g mas klo ada masalah sy bs telp masnya, makasi mas, mohon petunjuknya

benny  on November 11th, 2009

om nanya ni kalo aq mau bikin Program VB ibaratkan ada 2 PC yg satu misal nya aq bikin di PC ke 1 kaya server OS ne XP Home BJ
aq bikin database tabel ama isine lewat ‘localhost’
trus aq mau konekin dari PC ke 2 ke PC ke 1 lewat odbc 5.1 yg di control panel kok error ne
kaya gini ye aku di PC 2 mau konek ke PC 1
“Connecting Failed [HY000] [Mysql][ODBC 5.1 Driver]#HY000Host’IP PC aq ( Nama Komputer)’ is not allowed to connect to this MySQL server” tapi kalo host ne ato server ne aq ganti ‘localhost’ bisa gmn to

jadi ibarat kan aq mau bikin progrm ne multi user
server ne 1 ada client ne

gmn ya bisa bantu om

apa2 aja yg di perlukan kalo acsees kan tinggal di shere folder ne na kalo ini gmn ya biar isa multiuser
benny´s last blog ..mengenal (msgbox) My ComLuv Profile

Bart. Edi  on November 12th, 2009

@benny: udah di check firewallnya? coba di matikan dulu…

benny  on November 12th, 2009

sudah om tapi masi gk isa masuk

error ne sama aja not allowed kaya gk di ijinin gitu kenapa ya trus aq coba masukin server ne ip aq sendiri juga gk isa masuk
benny´s last blog ..mengenal (msgbox) My ComLuv Profile

anto  on January 15th, 2010

numpang tanya mas, aku punya masalah begini
1. Aku buat program yang bisa baca dan simpan data di MySQL Database. Aku udah coba dan berjlan baik

2. namun setelah aku hubungkan aplikasiku dengan alat input data yang menggunakan Ip Address ( IptoSerial Converter ) dengan port 3001 akibatnya koneksi ke database putus terus.

3. bisakah 1 aplikasi VB terkoneksi ke 2 server MySQL, dan baca tulis ke mysql server tersebut secara bersamaan.

terimakasih atas jawabannya

Bart. Edi  on January 16th, 2010

@anto: bisa saja 1 aplikasi ke dua server karena saya sudah pernah mencobanya. Tapi kedua server itu untuk RAID atau untuk data yang berbeda?

Dhani  on January 16th, 2010

Salam Kenal Pak Edi. Setelah saya membaca artikel anda saya sedikit bisa menambah ilmu saya pada pemrograman VB, maklum saya masih dasar dalam hal ini. Namun ada hal yang mau saya tanyakan, yakni berkenaan dengan pemrorgaman banyak pengguna (multiuser) atau jika database dikoneksikan dengan banyak komputer. Bagaimana perintah koneksinya, terimakasih sebelumnya, dan terimakasih banyak atas ilmu yang diberikan. Salam sejahtera untuk anda sekeluarga.

Aga  on January 23rd, 2010

Salam kenal Pak Edi, saya masih lum mengerti pengguna untuk memanage MySQL dengan mudah yg menggunakan GUI, dah saya download n trz spt kasus sdra. Muhammad Nurdin, dlm ksulitan saya adlh koneksi mysql dr komp 1 k komp 2,
1.klo akses database mysql lwt browser i2 dh bs, tp klo lwt vb kq lum bs y Pak.
2. ad pesan pd mySql administrator i2 “Host IP is not allowed to connect to this mySql server”, trz langkah-langkah ap lg agar bs koneksi ke client tsb,
mksh y Pak sblm’y

nangsw  on January 25th, 2010

Dear.. mas..
mohon pencerahan ni..
itu koneksi khan kalo kita pake server local atau server yang ada dalam 1 jaringan dengan kita..
nah.. kalo koneknya pake server yang hosting di internet gimana ya ?
khan di hostingan kita dapat database mysql..
itu koneksinya gimana ?
atas pencerahannya saya sampaikan terima kasih..

tiyo doank  on February 15th, 2010

pak edi,saya mo tnya.sebenarnya pertanyaan saya sama seperti yg ditanyakan mas anto sebelumx.sya mau buat koneksinya dinamis.jadi waktu progrm di eksekusi yg tampil dulu itu form koneksi yang berisi,text box ip address,textbox database,textboxusername,textboxpasswrod.
bagaimana caranya supaya yang di textbox itu bisa masuk ke fungsi koneksi yang saya buat.
Sub koneksi(server as string,db as string,user as string, pass as string)
ConnString = “DRIVER={MySQL ODBC 3.51 Driver};SERVER=” & server & “;DATABASE=” & db & “;USERNAME=” & user & “;PASSWORD=” & pass & “;PORT=3;OPTION=3?
end sub
mohon bantuannya pak,tolong kirimkan ke alamat email saya yah.terima kasih pak edi

kris  on February 17th, 2010

salam kenal pak Edi,

pak, dlu saya telah mencoba koneksi vb6 + mysql versi 3 (persis dgn yang bpk contohkan diatas),trus saya coba dikomp lain yg kebetulan telah di-install vb6 dan mysql versi 5, kemudian saya mencoba (koneksi yg sebelumnya dibuat)dan ternyata muncul error

run-time error ‘-2147467259 (80004005)’:
[microsoft][ODBC Driver Manager]Data source name not found and no default driver specified

apa yang harus saya lakukan pak?!, atas pencerahannya saya ucapkan terima kasih.

Bart. Edi  on February 17th, 2010

@kris: kemungkinan besar, anda belum instal connector ODBC nya, MyODBC, anda bisa download dari http://www.mysql.com/download/

kris  on February 18th, 2010

ok, satu masalah uda terselesaikan pak edi, oiy pak kalo diperkenankan neh, boleh dunk minta module, procedure atw contoh program vb+mysql yg menggunakan modul koneksi, modul DML yang bisa dipake untuk semua tabel (at least for table master),jadi tinggal atur parameter-nya aja,mohon dikirim ke email saya.

oiy pak,klo misalnya saya mw buat prog vb+mysql saya mjd client-server,apa yang harus saya persiapkan & saya lakukan??!!

terima kasih sekali atas bimbingannya.

kris  on February 19th, 2010

pak edi,,,

saya sudah membuat contoh sederhana aplikasi vb+mysql yang sudah dilengkapi dgn funsi insert-delete-update dengan mengadopsi coding dr artikel yang pak edi tulis.

permasalahan saya adalah saya gagal membuka kembali sebuah form yang baru saja ditutup sementara form utama (parent form) masih terbuka.

error ‘3705′:
operation is not allowed when the object is open

saya juga menerapkan sebuah module yang berisi fungsi untuk menutup koneksi seperti contoh yang pak edi berikan dan dipanggil saat sebuah child form ditutup.

terima kasih atas solusinya pak…

Darwin  on March 4th, 2010

Salam kenal pak Edi. Gini pak. Sy sgt tertarik dgn database. Mulai otodidak hingga kursus. Vb6 sudah sy kuasai walau gak smua. Mulai aplikasi sederhn hingga yg agak rmt(spt app hotel). Tapi slm ni back end sy acces. Sy ngin perdalam dtbse sy dgn mysql ato mssql. Kalo pak edi berkenan, sy mhn dizinkan tuk privat dngn bpk. Sy tgu respon bpk di email sy. Trims sblmnya.

Adi  on March 8th, 2010

hallo master, mau tanya nie.
gini : saya lebih suka main coding daripada main visual. meski VB 6 memberikan solusi visual. saya lebih suka membuat script sendiri, mendefinisikan variabel, memanggil form dsb.

Nah pertanyaan saya, sehubungan dengan ODBC connection, bagaimana mendefinisikan function yang anda kasi agar berbentuk Class? dan bagaimana mengaksesnya?

Athallah  on March 8th, 2010

Wah, artikelnya sgt membantu. oya mas gmn caranya buat file instalasi yg include myodbc, jd kt g perlu lg instal myodbc scara terpisah di komp client, thx

Berikan opini anda tentang artikel ini

CommentLuv Enabled