我试图从excel文件中获取一些数据,问题是我将第一行读作数据,所以我决定将我的connectionString中的HDR更改为是,但之后我的程序最终得到了主题标题中指定的异常.
这是我的代码和我的查询:
致电:
DataTable dt = Utils.queryXlsFile(Qry, dbConnection);
queryXlsFile方法:
public static DataTable queryXlsFile(String query, OleDbConnection dbConnection)
{
OleDbDataAdapter dbCommand = new OleDbDataAdapter(query, dbConnection);
DataTable dt = new DataTable();
dbCommand.Fill(dt);
return dt;
}
我的查询:
select top 10 * FROM [PERSONNE$] WHERE (((([F1] LIKE '% prénom %') OR ([F1] LIKE '% prénom')) OR ([F1] LIKE '%-prénom')))
我的连接字符串似乎很好,因为我可以打开与文件的连接.
在此先感谢您的帮助.
解决方法:
如果您有HDR =否,列名称将自动生成为F1,F2,…
如果您有HDR =是,则列名将从电子表格的标题行中获取.
您需要在标题行中使用字段名称替换查询中的“F1”.