我有一个使用Microsoft.ACE.OLEDB.12.0提供程序在Windows7 ( x64 )上读取MS Access数据库的x64应用程序,它工作正常(安装了Office2010)。
在安装了Office 2013的Windows 8下运行的同一应用程序失败,并显示一条消息,指出提供程序无法打开以前的版本。
在安装了Office 2013的Windows 8下,也有Microsoft.ACE.OLEDB.15.0,但我仔细检查了我的代码,确保它在连接字符串中指定了12.0。
这个provider -or有不同的“版本”吗?是不是我错过了什么?
我已经在Windows8下重新编译了一个使用x86平台的测试程序,并将提供者更改为Microsoft.Jet.OLEDB.4.0,它又可以正常工作了。不幸的是,该模块是一个更大的生态系统的一部分,需要能够在x64下运行(特别是excel的插件),而access数据库是由套件通过应用程序从供应商的网站下载的,因此转换数据库或将所有内容都更改为x86是不切实际的。
提前谢谢。
发布于 2014-06-04 22:15:10
我正在使用微软Windows8.1 64位和微软Office2013我安装了"Microsoft Access Database Engine 2010 Redistributable",但没有任何变化,并且得到了相同的错误,但是!安装“2007Office System Driver: Data Connectivity Components"解决了这个问题。
我通过这个link找到了这个解决方案。
尝试连接到visual studio中的Access数据库,但一直收到此错误?
先试着安装这个:http://www.microsoft.com/download/en/details.aspx?id=13255
但是,如果像我一样,这对你不起作用,请尝试以下方法:
注意:这确实适用于office 2010,尽管它适用于2007年的office,但请不要问我为什么它只是这样:)
数据源下载并安装:http://www.microsoft.com/download/en/confirmation.aspx?id=23734
https://stackoverflow.com/questions/14562587
复制相似问题