ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 12810|回复: 25

[原创] vba 连接mysql,几点经验

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2017-6-15 18:31 | 显示全部楼层 |阅读模式
折腾了三个小时,防止以后有人走弯路记录一下。

    Dim cn As ADODB.Connection  '定义数据链接对象 ,保存连接数据库信息;请先添加ADO引用
    Dim rs As ADODB.Recordset '定义记录集对象,保存数据表
    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset
    '设服务器地址、所连数据,及登录用户密码
    ser = "localhost"
    Db = "你的数据库名字"
    user = "root"
    pwd = "root"
    strconnt = "DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=" & ser & ";Database=" & Db & ";Uid=" & user & ";Pwd=" & pwd
    cn.ConnectionString = strconnt
    cn.Open
以上为连接代码,网上都有的。折腾我三小时的是mysql odbc数据源驱动
最开始下载mysql odbc驱动,我的系统是win7 64位,下载的是64位驱动
提示您的系统“找不到myodbc5S.dll”
试了好久,最后发现要安装vc++ 2013运行库
又在微软下载vc++ 2013运行库
再次安装,ok
但vba运行代码,提示报错"未发现数据源名称并且未指定默认驱动程序"
查看-管理工具-数据源,MySQL ODBC 5.3 Unicode Driver驱动已经有了。
百思不得其解,最后在网上找到原因,虽然我的系统是64位,但office是32位的,要32位的mysql odbc驱动
下载32位的mysql odbc驱动,安装又提示“找不到myodbc5S.dll”,恍然大悟,vc++运行库是64位的,又从新下载32位库,最后运行代码成功。
以下是需要用到的下载的官方网址
mysql odbc驱动forwin:
https://dev.mysql.com/downloads/connector/odbc/
vc++ 2013运行库:
http://download.microsoft.com/download/b/e/8/be8a5444-cdd8-4d3d-ae09-a0979b05aee3/vcredist_x86.exe

评分

9

查看全部评分

TA的精华主题

TA的得分主题

发表于 2017-6-22 10:45 | 显示全部楼层
顶,好帖子,有时候就是这些小问题折腾人啊

TA的精华主题

TA的得分主题

发表于 2017-6-22 10:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
十分感谢,确实在很多时候很有用,自己摸索需要很久。

TA的精华主题

TA的得分主题

发表于 2017-6-29 09:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-6-29 12:55 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
连过 SQL2014.。。。。。。

TA的精华主题

TA的得分主题

发表于 2017-6-29 14:48 | 显示全部楼层
有时候就是这样,需要不断总结

TA的精华主题

TA的得分主题

发表于 2018-2-7 11:21 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
万分感谢楼主分享,我原来和你问题是一样的,但我不知道需要安装vc++ 2013运行库
请教你从哪里查到需要安装这个库的呢?为什么大部分描述文章却没有写,另外也没人放配置驱动程序的配置图。
不管怎么样,我也可以连库了,感谢您和万能的Home平台!

TA的精华主题

TA的得分主题

发表于 2018-3-15 08:59 | 显示全部楼层
本帖最后由 dy_ysl 于 2018-3-15 09:02 编辑

我也一直连接不上,出现与楼主同样的提示,但是office怎么查看是32位的还是64位的?

TA的精华主题

TA的得分主题

发表于 2018-3-15 09:19 | 显示全部楼层
dy_ysl 发表于 2018-3-15 08:59
我也一直连接不上,出现与楼主同样的提示,但是office怎么查看是32位的还是64位的?

Sub test()
    If Chr(32) <> "A" Then n = 64 Else n = 32
    MsgBox n
End Sub

TA的精华主题

TA的得分主题

发表于 2018-3-15 21:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
不错不错!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-26 21:33 , Processed in 0.046988 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表