[英]“Microsoft.ACE.OLEDB.12.0” cannot be loaded in-process on a 64-bit SQL Server
I can not find a solution for this error: 我无法找到此错误的解决方案:
The 32-bit OLE DB provider "Microsoft.ACE.OLEDB.12.0" cannot be loaded in-process on a 64-bit SQL Server.
无法在64位SQL Server上加载32位OLE DB提供程序“Microsoft.ACE.OLEDB.12.0”。
I found a lot of posts on the web but none work. 我在网上发现了很多帖子但没有用。
I am working with SQL server 2014 64 bits and office 2013 我正在使用SQL Server 2014 64位和Office 2013
Code that generates the error: 生成错误的代码:
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0 Xml;HDR=YES;Database=C:\SSIS\Table_nm.xlsx',
'SELECT * FROM [Table_nm$]');
As it turns out, you can get the 64-bit driver from here. 事实证明,你可以从这里获得64位驱动程序。
https://www.microsoft.com/en-us/download/details.aspx?id=13255 https://www.microsoft.com/en-us/download/details.aspx?id=13255
After you download it, don't double-click it to install it, install it using the command prompt, which should be something like this: 下载后,不要双击它来安装它,使用命令提示符安装它,它应该是这样的:
"C:\Users\rshuell001\Downloads\AccessDatabaseEngine_x64.exe" /passive
The ' /passive
' is the key here because it prevents the installation from failing if you already have the 32-bit version installed (via 32-bit Office). '
/passive
'是此处的关键,因为如果您已经安装了32位版本(通过32位Office),它可以防止安装失败。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.