“ Microsoft.ACE.OLEDB.16.0”提供程序未在本地计算机上注册

当我试图通过 MSSQLServer 数据导入连接到任何 Excel 时,例如 SSIS 包 Microsoft.ACE.OLEDB.16.0提供程序没有在本地计算机上注册,我就会得到这个错误。(System.Data)

这不是相同的版本,我认为一些其他的补丁是必要的

376630 次浏览

16.0在64位操作系统中不起作用

下载补丁 Https://www.microsoft.com/en-us/download/details.aspx?id=13255

注意: 我正在运行 SQL 2016 Developer 64位,Office201664位。

我也有同样的问题,通过下载以下文件解决了它:

  1. 下载并安装: Https://www.microsoft.com/en-us/download/details.aspx?id=54920

  2. 无论您试图访问/导入什么文件,请确保将其选择为 Office2010文件(即使它可能是 Office2016文件)。

有用。

来源

对于那些在尝试以上方法之后仍然困在这个问题上的人来说。如果您右键单击数据库并进入 task-> import,那么问题就出现了。转到开始菜单,在 sql 服务器下,找到 x64位导入导出向导,然后尝试这样做。对我来说非常有效,但是我花了很长时间才找到微软!

作为一个快速解决方案,我刚刚将工作簿保存为 Excel97-2003。Xls 文件。我能够导入与该格式没有错误。

你现在必须使用从 Access-Redist (32/64位)新的 < em > XLSX 驱动程序。 当前 XLS 驱动程序自上次累计更新以来已损坏。

另一种对我有效的方法是简单地转换为 CSV。

如果你有操作系统(64位)和 SSMS (64位)并且已经安装了 AccessDatabaseEngine (64位)并且你仍然收到一个错误,尝试以下解决方案:

1: 直接打开 sql 服务器导入和导出向导。

如果您能够使用直接 sql 服务器导入和导出向导进行连接,那么从 SSMS 导入就是问题所在,如果从 SSMS 导入数据,就像激活32位一样。

不要安装 AccessDatabaseEngine (64位),尝试使用 AccessDatabaseEngine (32位),在安装后,如果你已经安装了另一个应用程序,Windows 将停止你继续安装,如果是这样,然后使用以下步骤。这是来自 微软。安静装置。

如果 Office365已经安装,并排检测将阻止安装继续进行。而是从命令行执行这些组件的/安静安装。为此,请下载所需的 AccessDatabaseEngine.exe 或 AccessDatabaeEngine _ x64.exe 到您的电脑,打开一个管理命令提示符,并提供安装路径,然后切换 Ex: C: Files AccessDatabaseEngine.exe/install

或从 以下连结检入 附加资料内容,

Https://www.microsoft.com/en-us/download/details.aspx?id=54920

遵循以下步骤:

  1. 点击[ here ][1] ,下载 Microsoft Access Database Engine 2016 Redistributable并安装
  2. 关闭 SQLServerManagementStudio
  3. 转到开始菜单-> Microsoft SQL Server 2017-> SQL Server 2017导入和导出数据(64位)
  4. 打开应用程序并尝试导入数据使用“ Excel2016”选项,它应该工作正常。

在安装了 MicrosoftAccess 数据库引擎2016可重新发布并找到了上面答案中指示的 X64位导入导出向导之后,我还有最后一个环要跳过。我得到这个错误‘执行查询“ CREATETABLE... .”失败,出现以下错误: “ 不支持文化... 3072(0x0c00)是无效的区域性标识符。”'

修复程序是进入控制面板-> 时钟和区域-> 将我的“英语(芬兰)”区域改为纯芬兰(芬兰)。其它更为传统的文化,如 en-US,也将发挥作用。我想我第一次在这里看到这个解决方案: 通过更改区域格式不支持修复区域性: 3072

如果你有 365办公室 :

  1. 下载32位版本 给你
  2. 以管理员身份运行命令提示符—— > C: 下载 AccessDatabaseEngine.exe/static
  3. 关闭 SSMS 并重新打开,再次尝试导入文件。

没用吗?

  1. 下载64位版本 给你
  2. 以管理员身份运行命令提示符—— > C: 下载 AccessDatabaseEngine _ X64.exe/static
  3. 关闭 SSMS 并重新打开,导入文件。

注: 例如,下载可执行文件的路径可能是“ C: Downloads User < strong > USERNAME Downloads AccessDatabaseEngine.exe”

对于这里的其他答案,你可以在另一个64位微软程序旁边安装“ ACEDBdriver64位”。

在我的例子中,我安装了 微软36564位(Microsoft365号办公室)。

因为这个错误

“ Microsoft.ACE.OLEDB.16.0”提供程序未在本地注册 机器(系统数据)

我尝试安装 MicrosoftAccess 数据库引擎2016可重新发布。但是我得到错误的32位和64位安装程序。

64位:

无法安装64位版本的 MicrosoftAccess 数据库 引擎2016,因为您当前拥有64位 Office 产品 如果要安装32位 MicrosoftAccess 数据库,请使用 引擎2016,您将首先需要删除64位的安装 卸载下列产品后,重新运行 以便安装32位版本的 MicrosoftAccess 数据库 Engine 2016: Office16单击运行扩展性组件64位 注册

或32位:

无法安装32位版本的 MicrosoftAccess 数据库 引擎2016,因为您当前拥有64位 Office 产品 如果要安装32位 MicrosoftAccess 数据库,请使用 引擎2016,您将首先需要删除64位的安装 卸载下列产品后,重新运行 以便安装32位版本的 MicrosoftAccess 数据库 Engine 2016: Office16单击运行扩展性组件64位 注册

我无法卸载单个组件:

enter image description here

步骤:

  1. 不需要卸载和重新安装任何东西。

  2. 请按“下载”,地址: http://www.Microsoft.com/en-us/Download/details.aspx? id = 54920”rel = “ norefrer”> Microsoft Access Database Engine 2016 Redistribution able2016

enter image description here

  1. 选择 AccessDatabaseEngine_X64.exe。不需要安装32位 AccessDatabaseEngine.exe,对照其他答案。

enter image description here

  1. 从命令提示符运行可执行文件:

    C:\Users\myuser\Downloads>AccessDatabaseEngine_X64.exe /quiet
    
  2. 如果需要管理员权限,请按 OK。

此后,我的宏可以从 Excel 工作表中获取数据。我检查了我的本地微软访问的微软365软件包,它仍然工作。

信贷去 无法安装32/64位版本的 MicrosoftAccess 数据库引擎,因为当前有64/32位 Office和它的来源在 如何使用 Office 64位安装 Microsoft. Ace.oledb 32位?