我正在连接到 xlsx 文件通过 ODBC 使用以下命令:
"DRIVER=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);HDR=YES;IMEX=1;READONLY=TRUE;DBQ=C:\Temp\test.xlsx"
它工作正常,但是当文件中没有标题时,我总是缺少一行。
显然是因为参数 “HDR=YES”但我不知道如何禁用标题行。
我试过 “HDR=NO”并忽略此参数
但没有效果。
我可以访问该文件,但我总是丢失第一行。
有人可以帮我吗?
谢谢!
最佳答案
我做了一些研究。
如果您打开 XLS 或 XLSX 通过像这样的驱动程序文件
"DRIVER=Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb);HDR=YES;IMEX=1;READONLY=TRUE;DBQ=C:\Temp\test.xlsx"
驱动程序完全忽略了参数。
所以 “HDR=NO”没有效果。
显然,驱动程序使用注册表中的设置来确定是否应将第一行解释为标题行。
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\15.0\Access Connectivity Engine\Engines\Excel
所以如果你设置 FirstRowHasNames=00 第一行不会被跳过。
Source
关于excel - 没有 header 的 ODBC xlsx 驱动程序连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49506048/