0

您好我可以成功地将 .XLS excel 文件数据导入到SQL server 2000的表中,如下所示:-

SELECT * INTO tblCustReports FROM 
    OPENROWSET('Microsoft.Jet.OLEDB.4.0', 
       'Excel 8.0;Database=C:\Customer Reports.xls', 
       'SELECT * FROM [Sheet1$]')

但是,如果 excel 文件是 .XLSX 格式,我也无法做到这一点。

有什么建议吗?

对于我的问题,我尝试了这个: -

SELECT * INTO tblCustReports FROM
OPENROWSET('Microsoft.ACE.OLEDB.12.0',
       'Excel 12.0 Xml;HDR=YES;Database=C:\Customer Reports.xlsx',
       'SELECT * FROM [sheet1$]')

但得到这个错误: -

服务器:消息 7403,级别 16,状态 1,第 28 行

找不到 OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”的注册表项。OLE DB 错误跟踪 [非接口错误:提供程序未注册。]。

谢谢

4

1 回答 1

1

查看您的提供商之间的差异。此外,查看您的 Excel 版本之间的差异。

SQL 2000 已经很老了,只支持旧版本的 Excel。

如果您想使用较新版本的 Excel,则必须另存为旧文件格式。将文件保存为 xls 而不是 xlsx.. 主要区别在于保存在 xlsx 中的 office 版本使用文件格式的压缩。

高温下,

肯特

于 2013-09-11T17:33:38.777 回答