【链接MySQL】教你用VBA链接MySQL数据库
hi,大家好呀!
之前呢,给大家分享过一个自制链接表管理器的文章,文章中有链接SQL Server数据库的代码,大家对这一段代码比较有兴趣,既然大家有兴趣,那我们今天就来讲一下链接数据库的代码。
这里给大家讲两个数据库的链接方法,一个是我们常用的SQL Server,另一个是现在非常流行的MySQL数据的链接。至于链接Access数据库,这个就由大家自己去试了,好的,废话不多说了,让我们来试一下吧。
我们先来看一下链接SQL Server怎么写。
01、链接SQL Server
因为SQL Server是我们比较常用的数据库,所以怎么去安装之类的就不去讲了,这里直接给大家上代码。
链接的代码主要就是链接字符串,数据库链接成功后,就是对数据库的一些操作,比如查询数据,这部分的代码就由大家自行补充了。
Dim strConnect As String
Dim cnn As Object 'New ADODB.Connection
Dim rst As Object
strConnect = "Provider=SQLOLEDB" & _
";Data Source=服务器地址" & _
";Initial Catalog=数据库名称" & _
";User ID=用户名" & _
";Password=密码"
Set cnn = CreateObject("ADODB.Connection")
cnn.connectionString = strConnect
cnn.Open
If cnn.State Then MsgBox "链接成功。", vbInformation
strSQL = "select count(1) FCount from INFORMATION_SCHEMA.TABLES "
Set rst = CreateObject("ADODB.Recordset")
rst.Open strSQL, cnn, 2, 3
'操作代码省略…
rst.Close
02
链接MySQL
我们详细的来讲一下链接MySQL。
在链接MySQL数据库前,需要安装MySQL数据库,这个就由大家自行安装。
数据库安装完成后,还需要安装MySQL 的ODBC驱动,注意安装的时候要确认一下你的office版本,如果你的office是32位的,也要安装32位的驱动,如果是64位的,则安装64位的,安装成功后,在控制版面的ODBC的数据源配置一下,如图
这些操作都完成后,我们就可以来写代码了
Dim strConnect As String
Dim cnn As Object 'New ADODB.Connection
Dim rst As Object
Dim strSQL As String
strConnect = "DRIVER={MySQL ODBC 8.0 Unicode Driver};SERVER=localhost;DATABASE=mydata_Test;USER=root;PASSWORD=123456;OPTION=3;"
Set cnn = CreateObject("ADODB.Connection")
cnn.ConnectionString = strConnect
cnn.Open
If cnn.State Then MsgBox "链接成功。", vbInformation
strSQL = "select count(1) FCount from t_test "
Set rst = CreateObject("ADODB.Recordset")
rst.Open strSQL, cnn, 2, 3
Debug.Print rst!FCount
rst.Close
还是一样,链接的字符串是我这里的数据库链接方式,这个需要替换成你们自己的。
这里我们输出了一下这张t_test里有几条记录,debug出来是2
那怎么来验证呢,那我们就在数据库的后台查看一下,如下图,是后台数据库的截图,我们可以看到是两条记录,这说明我们的操作是正确的。
好了,大家快去试一下吧。