我有一个 SQL Server 实例 2019 64 位和 Microsoft Office 2019 64 位。
当我想使用 SSMS 从 Excel 文件中“导入数据”时,根据 Excel 版本出现以下错误:
我试图安装:
虽然,在 SSMS 中,我可以看到 2 个提供程序:Microsoft.ACE.OLEDB.12.0 和 Microsoft.ACE.OLEDB.16.0
但没有任何效果。
我已经搜索了很长时间的解决方案,但我一无所获。
该主题的解决方案不起作用:'Microsoft.ACE.OLEDB.16.0' provider is not registered on the local machine. (System.Data)
Windows 10 64 位版本:20H2
SQL Server 实例版本:Microsoft SQL Server 2019 (RTM-GDR) (KB4583458) - 15.0.2080.9 (X64) Nov 6 2020 16:50:01 版权所有 (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Windows 10 Pro 10.0(内部版本 19042:)
最佳答案
SSMS 导入选项是 32 位执行选项,意味着它作为 32 位应用程序运行。
针对您的案例建议的解决方案是:
1- 使用 64 位版本的 SSMS 导入/导出数据向导。
2-删除 64 位 Office 并安装 32 位版本(如果可用),如果没有,则不要安装 Office 并安装 Access 数据库引擎 x86 版本。然后您可以使用 SSMS 中的导入向导。
3-使用带有Windows 32位版本的虚拟机,但那时你将不得不使用更旧版本的ssms(据我测试,即使版本16.x.x也没有,所以我不得不安装sql server management set from这个 link )它的名字是 SQLManagementStudio_x86_ENU.exe 。
这些是我的经验指导我使用的 3 个可用解决方案。
关于sql-server - SQL Server 2019 : 'Microsoft.ACE.OLEDB.16.0' provider is not registered on the local machine. (System.Data),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65829276/