web-dev-qa-db-ja.com

Visual Basic6.0のMySQLサンプル-読み取り/書き込み

リモートMySQLベースを操作する簡単な例を見つけたいと思います。 ADODB.Connectionとconnectionstringsの設定方法を説明するチュートリアルがインターネット上にいくつかあることは知っていますが、それを機能させることができませんでした。助けてくれてありがとう!

5
f1nn

MySQLダウンロードページ からODBC connectorをダウンロードします。

ここ で右のconnectionstringを探します。

VB6プロジェクトで、Microsoft ActiveX Data Objects 2.8 Libraryへの参照を選択します。 WindowsVistaまたはWindows7を使用している場合は、6.0ライブラリも使用できる可能性があります。プログラムをWindows XPクライアントでも実行する場合は、2.8ライブラリを使用した方がよい場合よりも優れています。 SP 1のWindows7を使用している場合、SP1の互換性のバグにより、プログラムがスペックの低い他のシステムで実行されることはありません。このバグの詳細については、 KB2517589

このコードは、ODBCコネクタを使い始めるのに十分な情報を提供するはずです。

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
6
Martin