Excel VBA: writing to mysql database

前端 未结 2 911
孤街浪徒
孤街浪徒 2020-12-01 12:06

I would like to write a macro in Excel that will write to a mysql database. Can someone please get me started on this?

2条回答
  •  萌比男神i
    2020-12-01 12:16

    You can connect to MySQL with a connection string and ADO:

    ''http://support.microsoft.com/kb/246335
    Set cn = CreateObject("ADODB.Connection")
    Set rs = CreateObject("ADODB.Recordset")
    
    strCon = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=MyDB;" _
    & "User=root;Password=pw;Option=3;"
    
    cn.Open strCon
    

    You can also use DSN with a connection to Excel using the Jet driver:

    Dim cn As ADODB.Connection
    
    ''Not the best way to get the name, just convenient for notes
    strFile = Workbooks(1).FullName
    strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFile _
        & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"";"
    
    Set cn = CreateObject("ADODB.Connection")
    
    ''For this to work, you must create a DSN and use the name in place of 
    ''DSNName
    strSQL = "INSERT INTO [ODBC;DSN=DSNName;].NameOfMySQLTable " _
    & "Select AnyField As NameOfMySQLField FROM [Sheet1$];"
    
    cn.Execute strSQL
    

提交回复
热议问题