Excel VBA连接MySql 数据库获取数据

本文介绍如何通过Excel VBA连接并操作MySQL数据库,包括配置VBA引用、安装MySQL ODBC驱动及示例代码。适用于Win7 64位与Office2010 32位环境。

   编写Excel VBA工具,连接并操作Mysql 数据库。

        系统环境:

               OS:Win7 64位 英文版

               Office 2010 32位 英文版

        1、VBA连接MySql前的准备

              Tools--->References..---->引用

              勾选Microsoft ActiveX Data Objects 2.8 Librarys 和Microsoft ActiveX Data Objects Recordset 2.8 Librarys

             

        2、安装Mysql ODBC连接服务

             下载连接:https://dev.mysql.com/downloads/connector/odbc

             注意:这里使用32位的版本

             

            下载上图中Windows(x86,32-bit),Zip Archive版本,在测试中,使用64位的版本无法连接到Mysql

            把下载上述文件拷贝放到资源管理器里,放到合适位置,解压,点击里面的install.bat批处理文件。

            从“控制面板”--->“管理工具”---->ODBC,打开以后,从这个里面无法看到Mysql的驱动,实际上使用的是下面32位的ODBC驱动

           C:\Windows\SysWOW64\文件夹下的odbcca32.exe

     3.连接示例

       

Sub TestConnectTodb()
    Dim conn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Set conn = New ADODB.Connection
    Set rs = New ADODB.Recordset
    conn.ConnectionString = "Driver={MySQL ODBC 5.3 Unicode Driver};Server=localhost;Port=3306;Database=db_hptms;Uid=root;Pwd=123456;OPTION=3;"
    conn.Open
    rs.Open "select fdEmpNo,fdEmpName from tbUser", conn
    With ThisWorkbook.Worksheets("MySqlData")
         .Visible = True
         .Range("a1:b1").Value = Array("EmpNo", "EmpName")
         .Range("A2").CopyFromRecordset rs
         .Activate
    End With
    rs.Close: Set rs = Nothing
    conn.Close: Set conn = Nothing
    MsgBox "处理完毕", vbOKOnly, "提示信息"
End Sub

 

      上述示例经过测试,可以正常连接到Mysql数据库,这里注意使用的ODBC连接的版本是32位,在测试中,使用64位的,始终无法正常打开连接。

     

转载于:https://www.cnblogs.com/SH170706/p/7714829.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值