我在使用用户密码编码示例时遇到问题
I having problems with a user-password coding example
使用上面的第二个答案 link 我不得不更新它 MySQL
private void btLogin_Click(object sender, EventArgs e)
{
string connectionString;
connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
connection = new MySqlConnection(connectionString);
using (var con = new MySqlConnection(connectionString));
{
using (var command = new MySqlCommand(connection = con))
{
con.Open();
command.CommandText = @"SELECT level FROM userTable WHERE user=@username, password=@password";
command.Parameters.AddWithValue("@username", lbUser.Text);
command.Parameters.AddWithValue("@password", tbPassword.Text);
var strLevel = command.ExecuteScalar();
if (strLevel == DBNull.Value || strLevel == null)
{
MessageBox.Show("Invalid username or password");
return;
}
else
{
MessageBox.Show("Successfully login");
Hide(); // hide this form and show another form
}
}
}
}
一切看起来都不错,但这个
using (var con = new MySqlConnection(connectionString));
{
using (var command = new MySqlCommand(connection = con))
{
con.Open();
它说con不存在。不知道用那个好看到问题了
MySqlCommand
构造函数的第一个参数是命令文本。如果您将代码更改为以下内容,它应该可以工作:
con.Open();
using (var command = new MySqlCommand())
{
command.Connection = con;
command.CommandText = @"SELECT level FROM userTable WHERE user=@username AND password=@password";
使用上面的第二个答案 link 我不得不更新它 MySQL
private void btLogin_Click(object sender, EventArgs e)
{
string connectionString;
connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
connection = new MySqlConnection(connectionString);
using (var con = new MySqlConnection(connectionString));
{
using (var command = new MySqlCommand(connection = con))
{
con.Open();
command.CommandText = @"SELECT level FROM userTable WHERE user=@username, password=@password";
command.Parameters.AddWithValue("@username", lbUser.Text);
command.Parameters.AddWithValue("@password", tbPassword.Text);
var strLevel = command.ExecuteScalar();
if (strLevel == DBNull.Value || strLevel == null)
{
MessageBox.Show("Invalid username or password");
return;
}
else
{
MessageBox.Show("Successfully login");
Hide(); // hide this form and show another form
}
}
}
}
一切看起来都不错,但这个
using (var con = new MySqlConnection(connectionString));
{
using (var command = new MySqlCommand(connection = con))
{
con.Open();
它说con不存在。不知道用那个好看到问题了
MySqlCommand
构造函数的第一个参数是命令文本。如果您将代码更改为以下内容,它应该可以工作:
con.Open();
using (var command = new MySqlCommand())
{
command.Connection = con;
command.CommandText = @"SELECT level FROM userTable WHERE user=@username AND password=@password";