这只会引发语法错误。尝试通过添加和删除引号等来解决此问题。帮助< 3
OleDbCommand register = new OleDbCommand("INSERT INTO userList (Username, Password) VALUES (@user, @pass);", connection);
register.Parameters.AddWithValue("@user", textBox1.Text);
register.Parameters.AddWithValue("@pass", textBox2.Text);
OleDbCommand checkUsed = new OleDbCommand("SELECT Username FROM userList WHERE Username=@user", connection);
checkUsed.Parameters.AddWithValue("@user", textBox1.Text);
connection.Open();
OleDbDataReader reader = checkUsed.ExecuteReader();
if (reader.HasRows)
{
MessageBox.Show("Username taken!");
} else
{
register.ExecuteNonQuery();
}
答案 0 :(得分:1)
结果密码是访问中受保护的关键字或者是什么。将其改为通过工作正常;)。
答案 1 :(得分:0)
在不知道你正在使用什么类型的数据库的情况下在黑暗中拍摄,但它可能不支持VALUES关键字,在这种情况下,这可能会起作用:
INSERT INTO userList (Username, Password) SELECT @user, @pass;
答案 2 :(得分:0)
在“register”命令中的参数之后看起来可能需要一个小括号“)”。