最近做的工作需要使用Excel连接MySql数据库。实现在Excel中输入编号,通过编号获取到存放在MySql数据库中的相应信息,并显示在Excel中的表格中。下面,记录一下配置Excel连接MySql数据库的过程。
安装MySql ODBC连接服务
首先,需要安装MySql ODBC服务。进入下载页面,选择与数据库版本和电脑位数(x64\x86)相适应的ODBC进行下载。这里,我选择的是64位的安装文件,版本是5.3。注意:需要根据数据库的版本号,选择正确的ODBC版本。如果你的数据库是5.x,则需要使用5.x版本的ODBC。并且,ODBC的版本位数与数据库的版本位数要保持相同。即同为32位或同为64位。否则,会出现错误或连接不上的情况。下载地址是:点我
之后就是安装ODBC,安装过程很简单。但是,只进行安装还是不能使用,我们还需要对ODBC进行配置一下。ODBC的管理工具位置如下:此电脑——属性——控制面板主页——管理工具——ODBC数据源(64位)
打开ODBC数据源管理工具,添加一个新的数据源:
然后,对新添加的数据源进行配置。这里,我只配置了连接名称和数据库的地址与端口号。如果数据库安装在本机,地址为127.0.0.1,如果是远程服务器,则输入远程服务器的地址。至此,MySql ODBC服务就已经安装和配置好了。
连接测试
既然安装好了,就要测试一下是否能用。
首先,需要在VBA中启用数据库的连接支持。在Excel中,按下Alt+F11快捷键,打开VB编辑器。选择菜单栏 工具——>引用:在弹出的引用窗口中,找到"Microsoft ActiveX Data Objects 6.0 Library"和"Microsoft ActiveX Data Objects Recordset 6.0 Library",把前面的框勾选上,点击确定即可。 (如果不是这两个版本,则选择一个版本号最高的勾选即可)
然后,在Excel VBA中输入以下代码:
Sub TestMySql()
'创建连接对象
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
'配置连接数据库的各种信息,如地址、用户名、密码等
conn.ConnectionString = "Driver={MySQL ODBC 5.3 Unicode Driver};Server=127.0.0.1;DB=mysql;UID=root;PWD=123456;OPTION=3;"
'打开数据库连接
conn.Open
Sql = "Select * from db"
'执行SQL语句
rs.Open Sql, conn
'如果查询到的结果不为空,弹出 “连接成功!”
If rs.EOF <> True Then
MsgBox ("连接成功!")
End If
'关闭数据库连接
rs.close
conn.close
Set rs = Nothing
Set conn = Nothing
End Sub
注意:将ConnectionString中的Server (数据库地址)、DB(数据库名) 、UID(用户名)、PWD(密码)换成你自己的相应信息。如果执行完上面的代码,可以正常弹出 “连接正常”对话框。则说明,我们Excel连接MySql数据库的配置完成了。
参考文档:VBA连接MySQL数据库
落花人独立,微雨燕双飞