java - MySQL 语法错误 INSERT INTO 和 WHERE 语句

标签 java mysql syntax-error

我创建了一个包含 4 列的数据库表

user , password , ipaddress , isVIP

我想将数据插入到 ipaddress 其中 user = ?和密码=?

我尝试使用此 mySQL 语法

PreparedStatement ps = con.prepareStatement("INSERT INTO login(ipaddress) VALUES(?) select * from login where user=? and password=?");
        ps.setString(1,ipaddress);
        ps.setString(2,id);
        ps.setString(3, password);

它告诉我有语法错误。

最佳答案

您的INSERT在语法上不正确。即使您修复了它,您的 INSERT 也将无法工作,因为您正在选择并插入到同一个表中! mysql 中不允许这样做。

您将需要使用更新。

con.prepareStatement("UPDATE login SET ipaddress = ? WHERE user=? and password=?");

关于java - MySQL 语法错误 INSERT INTO 和 WHERE 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41445607/

相关文章:

java CharBuffer.toString 创建了太多对象

java - 如何制作具有不可选择的预设选项的 JOptionPane 下拉列表?

php - ElasticSearch 在 MySQL 中的使用

windows - 语法命令错误

vb.net - 查询表达式 'Runner Name'中的语法错误(缺少运算符)

c++ - Eclipse 实时错误检查已禁用

java - 通过新加载的类对静态变量所做的更改似乎不适用。 ( java )

java - 继承和抽象参数传递

php - sql查询包括哪里不更新表而不更新表?

php - 对于在一个查询中表中具有相关行的每个客户端,删除除最后 10 行之外的所有行吗?