如何将SQL与Windows窗体集成
本文关键字:Windows 窗体 集成 SQL | 更新日期: 2023-09-27 18:13:26
我的小项目遇到了一些问题。
我必须检查TextBox
文本字段中的名称和密码是否与SQL数据库匹配。如果密码和名称与数据库匹配,则用户将被转移到另一个表单。否则,将显示错误消息。
。我无法确定TextBox
文本中输入的名称和密码是否与SQL数据库匹配。
我不使用数据绑定这个项目;这只是一个普通的数据库应用程序。
private void button2_Click(object sender, EventArgs e)
{
if (PasswordtextBox1.Text == "")
{
MessageBox.Show("Error! Enter password !", "Warning");
}
else
{
if (StaffUserIDcomboBox1.Text == "")
{
MessageBox.Show("Warning!");
}
string strSql = "Select UserLogin From UserLogin Where UserLoginID=" + int.Parse(StaffUserIDcomboBox1.Text);
UserClass1 userClass = new UserClass1();
SqlDataReader UserLogin_ID = userClass.GetUserID();
userClass.executeDataCommand(strSql);
int rowCount = 0;
if (UserLogin_ID.HasRows)
{
while (UserLogin_ID.Read())
{
rowCount++;
}
DisplayLabel.Text = rowCount.ToString();
UserLogin_ID.Close();
//pass value to form2 if valid
string userid = StaffUserIDcomboBox1.Text;
parent.setCurentUser(userid);
}
else
{
MessageBox.Show("No Results Found! Please Try again!");
}
}
}
我找不到在数据库中检查密码匹配的任何代码。通常,您应该有一个方法来验证用户和密码,如
private bool ValidateUser(String UserName, string HashedPassword)
{
//Use datareader etc to query
// SQL Query
string strSql = "Select UserLogin From UserLogin Where UserLoginID=" + UserName + " UserPassword = " + HashedPassword;
//check for returned rows count
//return true if found
}
在消息框后面添加BREAK;。显示代码。