2011-08-02 84 views
4

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

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

我对此非常新,并将不胜感激任何帮助,我可以得到。

顺便说一句,我也可以这样做不对(和therfore得到错误),因为如果我选择了64位导入向导有用于Microsoft Excel的选项。所以,我试图使用32位向导。有谁知道我可以如何让这个工作?提前致谢!

对于其他用户: 任何人谁具有同样的问题,即a1ex07建议Office 2010的作品以及答案。检查这个线程The 'Microsoft.ACE.OLEDB.12.0' provider is not registered in the local machine

+1

点击这里:http://stackoverflow.com/questions/1646409/the-microsoft-ace-oledb-12-0-provider-is-not-registered-in-the-local-机器 – a1ex07

+0

@ a1ex07我使用Office 2010无关紧要吗? – 2boolORNOT2bool

+0

我会回答,不,不。它工作得很好。 @ a1ex07请把你的评论放在答案部分,以便我可以给你你的代表点和谢谢! – 2boolORNOT2bool

回答

5

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

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

Noral库尔曼