INSERT INTO语法错误,适用于Access

时间:2017-03-22 20:57:02

标签: c# database insert

这只会引发语法错误。尝试通过添加和删除引号等来解决此问题。帮助< 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();
        }

3 个答案:

答案 0 :(得分:1)

结果密码是访问中受保护的关键字或者是什么。将其改为通过工作正常;)。

答案 1 :(得分:0)

在不知道你正在使用什么类型的数据库的情况下在黑暗中拍摄,但它可能不支持VALUES关键字,在这种情况下,这可能会起作用:

INSERT INTO userList (Username, Password) SELECT @user, @pass;

答案 2 :(得分:0)

在“register”命令中的参数之后看起来可能需要一个小括号“)”。