vlambda博客
学习文章列表

VBA连接MYSQL数据库方法及案例

一、系统环境及准备:

OS:WIN10 64位;Office32

1VBA连接MySql前的准备

Tools—>References…---->引用

勾选Microsoft ActiveX Data Objects2.8 Librarys MicrosoftActiveX Data Objects Recordset 2.8 Librarys

 


2、安装Mysql ODBC连接服务

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

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

 

VBA连接MYSQL数据库方法及案例

测试案例中,安装MSI程序安装包,安装后,MYSQL驱动搭建完成;安装后的运用程序如下;

VBA连接MYSQL数据库方法及案例


VBA连接MYSQL数据库方法及案例


二、VBA实例测试连接方法

VBA连接MYSQL数据库方法及案例

由于本例中,安装的MYSQL插件为MySQL ODBC 8.0 ANSI Driver,因此,在连接语句的驱动描述必须一致;

其余数据库连接hostIP,就是数据库的IP;

数据库实例名,即MYSQL数据库所对应的名称;

代码原文如下:


    Sub 连接MySQL数据库() '连接测试成功,先安装驱动插件

    

        '1. 引用ADO工具

        

        '2. 创建连接对象

        

        Dim con As New ADODB.Connection

        

        '3. 建立数据库的连接

        

        con.connectionString = "Driver={MySQL ODBC 8.0 ANSI Driver};Server=数据连接hostIP;DB=数据库实例名;UID=数据库用户名;PWD=数据库用户密码;OPTION=3;"

        

        con.Open

        

        MsgBox ("连接成功!" & vbCrLf & "数据库状态:" & con.State & vbCrLf & "数据库版本:" & con.Version)

        

        con.Close

        

        Set con = Nothing

        

    End Sub



三、查询案例测试

VBA连接MYSQL数据库方法及案例

实例代码如下

    Sub linkMySQL()

        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 8.0 ANSI Driver};Server=1.1.1.1;DB=tms;UID=root;PWD=root;OPTION=3;"

        conn.Open

    '从test数据库的YGXM表中取出所有数据

        rs.Open "select b.TABLE_NAME from INFORMATION_SCHEMA.TABLES as b  where b.TABLE_SCHEMA='tms'   ", conn

    '设置表头

    '    Range("A1:B1").Value = Array("ID", "Name")

    '将数据输出到工作表

        Range("A2").CopyFromRecordset rs

    '关闭连接

        rs.Close: Set rs = Nothing

        conn.Close: Set conn = Nothing

    End Sub



四、Win10安装MySQL8.0出现2503、2502错误码的问题解决方法

https://blog.csdn.net/qq_41667508/article/details/96828450

安装MySQL8.0版本,出现如下所示错误:

VBA连接MYSQL数据库方法及案例


在网上找到很多解决方法,包括在任务管里器中运行安装程序、在本地策略组编辑器中永久提权、在命令提示符中运行安装程序,尝试后都失败了。最后发现我打开命令提示符的时候没有右击——以管理员身份运行,所以尝试了以管理员身份运行只后再运行安装程序,即可成功安装了。

具体步骤如下:

1、找到命令提示符(cmd),一定要右键——以管理员身份运行(这是最关键的愿因),如下图所示:


2
、出现管理员:命令提示符对话框。然后输入msiexec/package +‘msi文件路径(注意在英文状态下),按回车键即可成功开始安装。如下图所示:

对应的安装包的路径一定要改成自己的路径名;