我正在使用OPENROWSET和Microsoft.ACE.OLEDB.12.0从Excel 2007(.xlsx)文件中检索SSMS中的数据。当我执行查询时,我只获得第一列(Excel单元格A1)的标题和其余列的F2,F3等,表格中没有数据。 Excel文件包含数据;但是,OPENROWSET不会检索除单元格A1之外的任何内容。
我试过了两次
SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\filepath.xlsx','SELECT * FROM [Sheet1$]')
和
SELECT *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\filepath.xlsx',[Sheet1$])
我对两个查询都得到了相同的结果。
我还尝试使用导入/导出向导(64位),当我在“选择源表和视图”时使用#39;并使用编辑映射...我收到以下错误:
Column information for the source and destination data could not be retrieved
-Unexpected error from external database driver(1).
**Additional information**
->Unexpected error from external database driver (1).(Microsoft Access Database Engine)
我正在使用64位版本的SQL Server。此外,这是我从外部来源收到的Excel文件。我从外部来源收到的其他Excel文件在使用相同方法检索数据时没有给我任何问题。此外,我使用的是SQL Server 2008 R2,Excel文件与SQL Server位于同一驱动器上。
非常感谢任何帮助。如果我可以使这个工作,那将是很好的,所以我可以处理从这些文件移动到SSIS包的数据。