将数据从XLS文件导入SQL Server 2008 R2数据库

时间:2017-10-05 09:52:11

标签: sql-server excel sql-server-2008-r2

以下是我们的情况:

我们有:

  • SI = 64位Windows Server 2008 R2标准版
  • DB = SQL Server 2008 R2

此服务器上未安装Microsoft Office软件包(我们无法打开.xls,.ppt,.doc等)

我们尝试使用向导导入Excel 97-2003文件,一切正常!

问题是:我们需要执行一个带有控件的查询,该控件将数据从Excel文件导入我们的数据库。

SELECT * 
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\file.xls', 'SELECT * FROM [Clienti$]')

但我们收到以下错误:

  

Msg 7308,Level 16,State 1,Line 1
  OLE DB提供程序“Microsoft.Jet.OLEDB.4.0”不能用于分布式查询,因为提供程序配置为在单线程单元模式下运行。

我们已在此guide

之后配置了一些选项
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO

1 个答案:

答案 0 :(得分:0)

根据this thread不幸地说:

64位操作系统不支持Microsoft.Jet.OLEDB.4.0。

此外this link可能有助于您完成工作。

尝试更改' Microsoft.Jet.OLEDB.4.0'到' Microsoft.ACE.OLEDB.12.0'?