c# – OleDb Excel:没有给出一个或多个必需参数的值

我试图从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”.

上一篇:oledb access OleDbParameter 防注入,验证用户名密码


下一篇:c# – 使用OleDbCommandBuilder时访问SQL语法错误