mycad 发表于 2018-6-22 07:50:03

AUTOCAD 2016 的64位 vba开发程序链接读取access的mdb数据库与以前的vba读取access...

请问大咖老师们:AUTOCAD 2016 的64位 vba开发程序链接读取access的mdb数据库与以前的vba读取access的mdb数据库有啥区别吗?

mycad 发表于 2018-6-22 07:52:52

https://blog.csdn.net/kirawoo/article/details/39032387


64位系统中连接Access数据库文件的一个问题

近日在windows 7 64位系统中编译以前写的程序,发现在连接Access数据库时总是出现异常,提示“Microsoft.Jet.OLEDB.4.0”未在本机注册,同样的代码在32位的xp系统中却没有问题,经过一番搜索后找到一个比较简便的处理办法,特在此做一下记录。

原因估计:数据库文件使用Access2003格式的*.mdb文件,其对应的OLEDB 4.0在win7 64位系统中支持不是很好。

处理办法:将数据库文件升级为Access2007格式的*.accdb文件,按如下修改连接字符串,其它代码不变。

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=;User ID=;Password=;

修改为

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=;User ID=;Password=;

注意本机还需要安装新版的数据中驱动文件:AccessDatabaseEngine.exe,此文件有32位和64位两个版本分别在本机安装即可,这样同样的代码就可以同时用于32位和64位两种平台了。
页: [1]
查看完整版本: AUTOCAD 2016 的64位 vba开发程序链接读取access的mdb数据库与以前的vba读取access...