private void btnCheck_Click(object sender, EventArgs e)
{
string costring = connection();
string MyQuery = "select expense from dbo.KmtAccounts where date between '"+ txtFromDate +"' and '" +txtToDate +"' and registernumber='" + txtRegNo.Text + "'";
SqlConnection conn = new SqlConnection(costring);
SqlCommand cmd = new SqlCommand(MyQuery, conn);
conn.Open();
txtResult.Text = Convert.ToString(cmd.ExecuteScalar());
conn.Close();
}
答案 0 :(得分:3)
在您的代码中有几点需要改进。
答案 1 :(得分:2)
导致异常的问题是txtFromDate
和/或txtToDate
中的值不被理解为代表日期。
更大的问题是,似乎很少或没有什么可以阻止其中一个值包含有效值,后跟';delete from dbo.KmtAccounts;---
。
这两个问题都可以通过查询select expense from dbo.KmtAccounts where date between @from and @to and registernumber=@reg
,然后使用参数将日期(作为日期,而不是字符串)和注册号添加到查询中来解决。