没有 header 的 ODBC xlsx driver 连接字符串

ODBC xlsx driver connectionstring without header

我正在使用以下命令通过 ODBC 连接到 xlsx 文件:

"DRIVER=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);HDR=YES;IMEX=1;READONLY=TRUE;DBQ=C:\Temp\test.xlsx"

它工作正常,但当文件中没有 header 时,我总是漏掉一行。 显然是因为参数 "HDR=YES" 但我不知道如何禁用 header 行。

我试过 "HDR=NO" 并忽略了这个参数 但没有效果。 我可以访问该文件,但我总是丢失第一行。

有人可以帮我吗?

谢谢!

我做了一些研究。

如果您通过 driver 之类的

打开 XLSXLSX 文件
"DRIVER=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);HDR=YES;IMEX=1;READONLY=TRUE;DBQ=C:\Temp\test.xlsx"

driver 完全忽略了参数。 所以"HDR=NO"没有效果。

显然 driver 使用注册表中的设置来确定第一行是否应解释为 header 行。

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office.0\Access Connectivity Engine\Engines\Excel

因此,如果您设置 FirstRowHasNames=00,第一行将不会被跳过。

Source