我正在做一个C#项目,我有以下场景:
第一个是月份,第二个是年份,一个是按钮。我还有一个表,其中包含两个名为date(datatype small datetime)和price(varchar)的列。
我已经生成了这个但是它的错误是“无效的列名'yourMonthSelected'和 “无效的列名'yourYearSelected'”。 我的方法是正确的方法吗?
答案 0 :(得分:2)
我认为你查询文字是错误的。您尝试在查询中添加yourMonthSelected
和yourYearSelected
作为参数,但未在查询中使用@yourMonthSelected
和@yourYearSelected
指定它们。
尝试此查询;
string intero = "select sum(no_of_mobiles) from table2 where datepart(mm,given_schedule)= @yourMonthSelected and datepart(yy,given_schedule)= @yourYearSelected";
查看AddWithValue
方法并检查如何使用它。你可以写;
SqlDataReader rdr = cmd.ExecuteReader();
而不是
SqlDataReader rdr;
rdr = cmd.ExecuteReader();
它们完全相同,但第一个看起来更好。同样在您的while子句中,您应该使用rdr[0]
而不是rdr
,因为rdr
是array
。像这样;
while (rdr.Read())
{
label2.Text = rdr[0].ToString();
}