vba怎么将excel数据插入mysql数库库

vba怎么将excel数据插入mysql数库库,第1张

1、定义连接db的过程:

Dim oConn As ADODB.Connection

Private Sub ConnectDB()

Set oConn = New ADODB.Connection

oConn.Open "DRIVER={MySQL ODBC 5.1 Driver}" &_

"SERVER=localhost" &_

"DATABASE=yourdatabase" &_

"USER=yourdbusername" &_

"PASSWORD=yourdbpassword" &_

"Option=3"

End Sub

2、执行db插入的具体写法:

Dim rs As ADODB.Recordset

Private Sub InsertData()

Set rs = New ADODB.Recordset

ConnectDB

With wsBooks

For rowCursor = 2 To 11

strSQL = "INSERT INTO tutorial (author, title, price) " &_

"VALUES ('" &esc(.Cells(rowCursor, 1)) &"', " &_

"'" &esc(.Cells(rowCursor, 2)) &"', " &_

esc(.Cells(rowCursor, 3)) &")"

rs.Open strSQL, oConn, adOpenDynamic, adLockOptimistic

Next

End With

End Sub

VBA链接mysql数据库报错显示运行时错误

有2个原因 第一:程序方面的错误,这个没什么好说的吧,捉“虫”即可 第二:也就是本文标题提到的错误实际上是由于MS Jet引擎没有对临时目录的写入权限,导致数据库创建失败。

编写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=localhostPort=3306Database=db_hptmsUid=rootPwd=123456OPTION=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.outofmemory.cn/zaji/6147343.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存