SQL Server 2008 R2 Excel导入

我在Windows 7 64位上使用SS 2008 R2和Office 2010。 我正在尝试使用导入向导将Excel表导入到表中。 我得到这个错误:

The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. (System.Data) 

我对此非常感兴趣,非常感谢我的帮助。

不过,我也可能做错了(因此得到的错误),因为如果我select64位导入向导没有Microsoft Excel的选项。 所以,我试图使用32位向导。 有谁知道我怎么能得到这个工作? 提前致谢!

对于其他用户:对于任何有这个问题的人,a1ex07build议的答案也适用于Office 2010。 检查此线程“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机中注册

我尝试使用SQL Management Studio(SMS 2012)导入Excel文件时遇到同样的问题。 我使用包括Office 2013在内的所有版本的64位版本。来自social.msdn.microsoft.com的这个解决scheme为我解决了这个问题:

您可能遇到的问题是导入/导出向导正在作为32位版本启动。 这可能是由于您右键单击数据库并单击导入,因为SSMS是一个32位程序,它将启动32位进程。 尝试通过单击开始 – >程序文件 – > Microsoft SQL Server 2012->导入和导出数据(64位)来显式运行导入/导出向导(64位)从64位数据源导入数据。

Noral Kuhlmann

对于任何有这个问题的人,a1ex07build议的答案也适用于Office 2010。 alex07的回答'Microsoft.ACE.OLEDB.12.0'提供者没有在本地机器上注册 …这个答案最初来自kd7。

该文件可以在Excel 2007中尝试安装2007 Office System Driver: 数据连接组件