myReader = SelectCommand.ExecuteReader();
您的SQL语法中有一个错误;请查看与您的MySQL服务器版本相对应的手册,以便在第1行“password”附近使用正确的语法
MySqlConnection conn = new MySqlConnection("secretstring")
MySqlCommand SelectCommand = new MySqlCommand("SELECT * FROM userspassword where'" + this.loginuser.Text + "'and password'" + this.passworduser.Text, conn);
MySqlDataReader myReader;
conn.Open();
//myReader = SelectCommand.ExecuteReader();
myReader = SelectCommand.ExecuteReader();
int count = 0;
while (myReader.Read())
{
count = count + 1;
}
if (count == 1)
{
MessageBox.Show("Correct");
Form2 pannel = new Form2();
pannel.Show();
Hide();
}
else if (count > 1)
{
MessageBox.Show("More then 1 user logged in");
}
else
MessageBox.Show("Incorrect password or username");
conn.Close();
缺少用户要比较的字段名
MySqlCommand SelectCommand = new MySqlCommand("SELECT * FROM userspassword where " +
"username = '" + this.loginuser.Text + "' and password = '" +
this.passworduser.Text +"'" , conn);
以及字段、值和结尾引号之间的空格。
说,让我指出字符串连接的危险。如果您的一个文本框包含一个单引号,该命令将因语法错误而失败,或者,如果您有恶意用户,他/她可能会准备在输入框中插入Sql文本的Sql注入攻击。
MySqlCommand SelectCommand = new MySqlCommand("SELECT * FROM userspassword where " +
"username = @uname and password = @pwd", conn);
SelectCommand.Parameters.AddWithValue("@uname",this.loginuser.Text);
SelectCommand.Parameters.AddWithValue("@pwd",this.passworduser.Text);
myReader = SelectCommand.ExecuteReader();
给了我一个错误: “错误1064(42000):您的SQL语法中有错误;请查看与MariaDB服务器版本相对应的手册,以便在第1行”创建表(varchar(64)、var(64)、var'“附近使用正确的语法”
问题内容: 我有这样的存储过程: 但是它给出了错误: -您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以在第3行的’‘附近使用正确的语法 错误是什么意思?第2行有什么问题? 问题答案: 在使用触发器,存储过程等之前,必须先更改定界符。
我试图运行查询,但我不能得到正确的输出,我得到了这个错误,我尝试了一些stackoverflow(如。但我无法解决。 --错误-- 这是发生错误的主要代码
问题内容: 使用 Hibernate 4.1 和 MySQL 5 将 Folder实体保存到数据库时,出现以下错误。我没有其他实体的任何问题。 这是我的文件夹表: 我的文件夹实体: Hibernate生成的insert语句: hibernate设置: 完整的堆栈跟踪: 问题答案: 好,我找到了解决方案;我们仍然可以像这样使用’ order ‘关键字作为列名: 感谢 Ghost 和 Dave New
我在MySQL5.7.19版本中尝试执行查询视图时遇到了一个错误