"Microsoft.ACE.OLEDB.12.0"无法在64位SQL Server上进行进程内加载 [英] "Microsoft.ACE.OLEDB.12.0" cannot be loaded in-process on a 64-bit SQL Server

查看:907
本文介绍了"Microsoft.ACE.OLEDB.12.0"无法在64位SQL Server上进行进程内加载的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我找不到此错误的解决方案:

I can not find a solution for this error:

不能在64位SQL Server上在进程中加载​​32位OLE DB提供程序"Microsoft.ACE.OLEDB.12.0".

The 32-bit OLE DB provider "Microsoft.ACE.OLEDB.12.0" cannot be loaded in-process on a 64-bit SQL Server.

我在网络上发现了很多帖子,但都无济于事.

I found a lot of posts on the web but none work.

我正在使用64位SQL Server 2014和Office 2013

I am working with SQL server 2014 64 bits and office 2013

产生错误的代码:

SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
                         'Excel 12.0 Xml;HDR=YES;Database=C:\SSIS\Table_nm.xlsx', 
                         'SELECT * FROM [Table_nm$]'); 

推荐答案

事实证明,您可以从这里获取64位驱动程序.

As it turns out, you can get the 64-bit driver from here.

https://www.microsoft.com/zh-我们/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

此处的键是/passive,因为如果已经安装了32位版本(通过32位Office),它可以防止安装失败.

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).

这篇关于"Microsoft.ACE.OLEDB.12.0"无法在64位SQL Server上进行进程内加载的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆