MySQL Sample for Visual Basic 6.0 - read/write

mysql, vb6

Solution

Download the `ODBC connector` from the MySQL download page.

Look for the right `connectionstring` over here.

In your VB6 project select the reference to `Microsoft ActiveX Data Objects 2.8 Library`. It's possible that you have a 6.0 library too if you have Windows Vista or Windows 7. If you want your program to run on Windows XP clients too than your better off with the 2.8 library. If you have Windows 7 with SP 1 than your program will never run on any other system with lower specs due to a compatibility bug in SP1. You can read more about this bug in KB2517589.

This code should give you enough information to get started with the ODBC connector.

Private Sub RunQuery()
    Dim DBCon As adodb.connection
    Dim Cmd As adodb.Command
    Dim Rs As adodb.recordset
    Dim strName As String

    'Create a connection to the database
    Set DBCon = New adodb.connection
    DBCon.CursorLocation = adUseClient
    'This is a connectionstring to a local MySQL server
    DBCon.Open "Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=myDataBase; User=myUsername;Password=myPassword;Option=3;"

    'Create a new command that will execute the query
    Set Cmd = New adodb.Command
    Cmd.ActiveConnection = DBCon
    Cmd.CommandType = adCmdText
    'This is your actual MySQL query
    Cmd.CommandText = "SELECT Name from Customer WHERE ID = 1"

    'Executes the query-command and puts the result into Rs (recordset)
    Set Rs = Cmd.Execute

    'Loop through the results of your recordset until there are no more records
    Do While Not Rs.eof
        'Put the value of field 'Name' into string variable 'Name'
        strName = Rs("Name")

        'Move to the next record in your resultset
        Rs.MoveNext
    Loop

    'Close your database connection
    DBCon.Close

    'Delete all references
    Set Rs = Nothing
    Set Cmd = Nothing
    Set DBCon = Nothing
End Sub

Problem

I'd like to find a simple example of working with remote MySQL base. I know, there are some tutorial over the internet, explaining how to set up ADODB.Connection and connectionstrings, but I couldnt make it work. Thanks for any help!

Original source