繁体   English   中英

错误:索引(从零开始)必须大于或等于零且小于参数列表的大小

[英]ERROR: Index (zero based) must be greater than or equal to zero and less than the size of the argument list

我正在尝试将数据插入到数据库中,这是命令:

 public static bool InsertUser(string Date, string Day, string HourFrom, string HourTo, int HoursWorked, int Where)
    {
    string sql = string.Format("INSERT INTO Tablee (Date, Day, HourFrom, HourTo, HoursWorked, Where)VALUES('{0}','{1}','{2}','{3}','{4}',{5},{6})", Date, Day, HourFrom, HourTo, HoursWorked, Where);

    return DAL.ExecuteNonQuery(sql) != 0;
}

现在,我在构建String Sql的那一行(“ INSERT INTO ...”)中得到了在主题及其中编写的错误。 任何人都知道我如何能够解决它?

PS'{0}'。'{1}'..的目的是什么? 我从我做过的一个旧项目中复制了它,但我不记得为什么它在那里以及它做什么。

您列出了七个索引(0-6),并且只有6个参数。

卸下{6}

有这个电话:

string.Format("...{0}','{1}','{2}','{3}','{4}',{5},{6}...", parameters...);

您应该提供7个参数,从0到6,目前仅提供6个参数:

Date, Day, HourFrom, HourTo, HoursWorked, Where

这是错误。

一些创意格式说明了您的问题:

VALUES(
'{0}',   '{1}',   '{2}',      '{3}',    '{4}',         {5},      {6})"
Date,    Day,     HourFrom,   HourTo,   HoursWorked,   Where           <<whoops

删除“ 6”或为其提供一个值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM