我需要使用JDBC语句[重复]更新mySQL中的记录。

问题描述 投票:0回答:3

public void updateClientsMoney(String name, String password, Long transactValue) throws SQLException { System.out.println("updateClientsMoney"); String query = ""; if(transactValue < 0) { query = String.format("UPDATE bank_client SET money %s where name = '%s'", transactValue, name); } else{ query = String.format("UPDATE bank_client SET money %s where name = '%s'", transactValue, name); } try(Statement statement = connection.createStatement()){ statement.executeQuery(query); } }

但是会引发异常:“ java.sql.SQLException:无法使用executeQuery()发出数据操作语句”。公共无效updateClientsMoney(字符串名称,字符串密码,长transactValue)...
java mysql sql jdbc
3个回答
1
投票
您正在对DML语句(即数据处理语句)使用executeQuery方法。诸如INSERT,UPDATE和DELETE之类的操作属于此类。您需要像下面这样更新代码

1
投票
除了报告的问题之外,此代码

1
投票
要操作数据,您实际上需要executeUpdate()而不是executeQuery()
© www.soinside.com 2019 - 2024. All rights reserved.