我想用vba来对远程的服务器上的MySQL中的数据进行操作,谁能告诉我VBA可以通过几种方式来连接远程的Mysql数据库.
我现在知道可以在本地建立一个ODBC数据源,但这种方式我感觉麻烦,因为我写完的脚步要给好几个人使用,那样的话每个人都要
建立ODBC数据源。有没有类似.net那样的通过语句直接连接的??谁知道能给详细讲讲吗,最好有实例代码可以参照。

解决方案 »

  1.   

    oracle的给你参考下Public Cnnl As New ADODB.Connection
    Public Rst As New ADODB.Recordset
     Cnnl.Open "Provider=MSDAORA.1;User ID=***;Password=***;Data Source=***;Persist Security Info=True"
        Set Rst = New ADODB.Recordset
      
        ' oracle
        Rst.Open strSQL, Cnnl
     Sheets("rawdata").Range("A2").CopyFromRecordset Rst
      

  2.   

    Sub LinkMysql()    Dim conn As ADODB.Connection
        Dim rs As ADODB.Recordset
        Set conn = New ADODB.Connection
        conn.ConnectionString = "DRIVER={MySQL ODBC 5.1 Driver};" & "SERVER=10.1.3.153;" & " DATABASE=数据库名称;" & "UID=用户名;PWD=用户密码; OPTION=3"
        conn.Open
        Set rs = conn.Execute("p1")
        For i = 0 To rs.Fields.Count - 1
           Sheets("Sheet1").Cells(1, i + 1) = rs.Fields(i).Name
        Next i
        While Not rs.EOF
            For i = 0 To rs.Fields.Count - 1
                Debug.Print rs.Fields(i).Value
            Next i
            r = r + 1
            rs.MoveNext
        Wend
        rs.Close
        Set rs = Nothing
        conn.Close
        Set cn = Nothing
        
    End Sub