如何解决“参数不正确”;错误
本文关键字:参数不正确 不正确 错误 参数 何解决 解决 | 更新日期: 2023-09-27 18:11:47
如何解决这个问题,当我运行我的代码,它给出错误的日期?
public static DataTable offers(string todaysdate)
{
con.Open();
SqlCommand cmd = new SqlCommand("SELECT Validation.valid_image FROM Validation WHERE (Valid_date <= @today) AND (Valid_Expire >= @today) ", con);
cmd.Parameters.AddWithValue("@today", todaysdate);
sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
sda.Fill(dt);
con.Close();
return dt;
}
1。我看到你的参数应该是@today,因为你在sql命令中添加了@today作为参数名的参数。
2。但是你正在使用@todya,在内联sql中,为什么它会抛出参数不正确的错误。
3。我猜你拼错了,把@todya改成@today,把@todya改成@today来解决问题。
4。将内联sql传递中的@today周围的引号删除为@today而不是像这样的"@today",这应该可以解决问题。
SELECT Offer_details.Offer_image FROM Offer_details WHERE (Offer_date <=@today) AND (Offer_Expire >=@today)
5。如果您仍然看到问题,请执行以下步骤6、7
6。SELECT Offer_details.Offer_image FROM Offer_details WHERE (Offer_date <='10/06/2016') AND (Offer_Expire >= '10/06/2016')
7。从SSMS运行这个,看看是否能够检索数据,如果你能够在cmd上添加监视,看看内联sql是否被转换为合适的sql,如上面所示,如果有任何语法错误,请删除它们。
尝试从查询'@today' -> @today中删除quote(')希望这对您有所帮助。