gpt4 book ai didi

c# - 我想检查给定记录是否在数据库中

转载 作者:搜寻专家 更新时间:2023-10-30 22:10:25 26 4
gpt4 key购买 nike

我想检查给定的记录是否在数据库中。它显示错误“无效的列名”

 private void SaveButton_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("Data Source=PC308433;Initial Catalog=SampleDatabase;Persist Security Info=True;User ID=sa;Password=adm23");

conn.Open();

SqlCommand sc = new SqlCommand("select USERNAME from QuizTable where USERNAME=" + UserNameTextbox.Text + "", conn);
string result =Convert.ToString(sc.ExecuteNonQuery());//I dont know to store the result of query here.Pls help me
if (result == UserNameTextbox.Text)
MessageBox.Show("Welcome");
else
MessageBox.Show("Please register");

conn.Close();


}

最佳答案

你必须使用 ExecuteReader()为此,ExecuteNonQuery()仅适用于插入、更新和删除语句,并使用采用 CommandBehaviour 的构造函数使用 SingleRow 枚举,因为每个用户名应该有一行:

SqlDataReader rdr = sc.ExecuteReader(CommandBehavior.SingleRow);
if(rdr.Read() && (rdr["USERNAME"].ToString() == UserNameTextbox.Text))
MessageBox.Show("Welcome");
}

旁注:

你应该使用 parameterized queries ,目前您对 sql injection 开放.

关于c# - 我想检查给定记录是否在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31578700/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com