未知栏“某物”;在'where子句'

本文关键字:where 子句 未知 某物 | 更新日期: 2023-09-27 18:08:11

我的问题总是在扔。请帮我找出问题所在。谢谢!

MySqlConnection cnn = new MySqlConnection(mysqladdress);
cnn.Open();
try
{
    MySqlCommand cmd = new MySqlCommand();
    cmd.Connection = cnn;
    cmd.CommandText = "SELECT * FROM info where StudentID ='" + textBox1.Text + "'and Name='" + textBox2.Text + "'";
    MySqlDataReader reader = cmd.ExecuteReader();
    int count = 0;
    while (reader.Read())
    {
        count = count + 1;
    }
    if (count == 1)
    {
        MessageBox.Show("Welcome");
    }
    else if (count > 1)
    {
        MessageBox.Show("Access Denied");
    }
    else
    {
        MessageBox.Show("Wrong student ID and Password");
    }
}
catch (Exception)
{
    throw;
}

未知栏“某物”;在'where子句'

这一定是一个打字错误或一些简单的东西,在不知道确切的错误消息的情况下很难判断。

为了避免这样的错误,我建议您使用参数:

cmd.CommandText = "SELECT * FROM info where StudentID = @StudentID and Name= @Name";
cmd.Parameters.Add("@StudentID", SqlDbType.VarChar).Value = textBox1.Text;
cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = textBox2.Text;