美好的一天
我正在登录页面上工作,如果数据库表中显示了一个值,则用户将能够登录;如果未显示该值,它将为他显示一个更改密码页面。
我想要的是,如果该值不存在,如何编写if语句来检索用户名和密码?
我尝试过的是以下
con.Open();
DataTable dt = new DataTable();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = ("select count (*) from log_sup where ENTITY_DIVISION_CODE = '" + textBox1.Text + "'and DX_NUMBER = '" + textBox2.Text + "'" );
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
cmd.ExecuteNonQuery();
if (dt.Rows[0][0].ToString() == "1" )
{
Form2 f2 = new Form2();
f2.Show();
this.Hide();
}
else
{
MessageBox.Show("THE USERNAME OR PASSWORD IS INVALID. THIS IS YOUR " , MessageBoxButtons.OK);
Form3 F3 = new Form3();
F3.Show();
this.Hide();
}
con.Close();
答案 0 :(得分:1)
COUNT()
是一个标量函数,因此请使用cmd.ExecuteScalar();
作为Object
来获得结果。无需采取DataTable
来做其他复杂的事情。
以下是简单的解决方案。请相应地进行修改,因为这只是如何使用ExecuteScalar
的帮助。
int result = Convert.ToInt32(cmd.ExecuteScalar());
if(result > 0)
{
//SUCCESS
}
else
{
//FAIL
}