zoukankan      html  css  js  c++  java
  • Excel VBA连接MySql 数据库获取数据

       编写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:WindowsSysWOW64文件夹下的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位的,始终无法正常打开连接。

         

    幸福都是奋斗出来的,努力奋斗才能梦想成真。坚持自律,约束自我,克制弱点,坚持努力,遇见更好的自己。
  • 相关阅读:
    vim介绍 & vim颜色显示和移动光标& vim一般模式下移动光标 & vim一般模式下复制、剪切和粘贴
    lvm 详解 磁盘故障小案例
    磁盘格式化、磁盘挂载、手动增加swap空间
    df du 磁盘分区
    su sudo 限制root远程登录
    usermod 用户密码管理 mkpasswd
    顺序查找,二分法查找,插值查找算法实现及分析
    完全二叉树的构建及三种遍历
    Mybatis由于类型转换出现的问题
    delimiter解释
  • 原文地址:https://www.cnblogs.com/SH170706/p/7714829.html
Copyright © 2011-2022 走看看