使用OpenRowSet从Excel文件获取一些NULL标头

时间:2019-03-18 16:22:01

标签: sql-server excel openrowset

我正在尝试获取Excel文件的标题。当我使用此代码时:

SELECT TOP 1 *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0 Xml;HDR=NO;Database=C:\myfolder\myfile.xlsx;', 'SELECT * FROM [Page1$]')

我得到了大多数列,但是其中一些是NULL。我检查了文件,所有标题都正确放置了,所有标题都是字符串,每列都有数据,等等。

您知道发生了什么吗?

1 个答案:

答案 0 :(得分:1)

能否请您在IMEX=1;之前添加HDR=NO;并检查结果。

因此查询将是:

SELECT TOP 1 *
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0 Xml;IMEX=1;HDR=NO;Database=C:\myfolder\myfile.xlsx;', 'SELECT * FROM [Page1$]')