您好我可以成功将.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$]')
但是得到这个错误: -
服务器:Msg 7403,Level 16,State 1,Line 28
找不到OLE DB提供程序的注册表项 'Microsoft.ACE.OLEDB.12.0'。 OLE DB错误跟踪[非接口错误: 提供者未注册。]。
由于
答案 0 :(得分:1)
查看提供商之间的差异.. 另外,请查看您的Excel版本之间的差异..
SQL 2000已经很老了,只支持旧版本的Excel。
如果您想使用较新版本的Excel,则必须以旧文件格式保存。将文件另存为xls而不是xlsx ..主要区别在于xlsx中保存的office版本使用文件格式的压缩。
HTH,
肯特