我正在向 MySQL 数据库插入数据,但在执行插入语句时出现错误:
The ResultSet can not be null for Statement.executeQuery.
虽然如果我检查数据库表,我发现值已成功插入。这很令人困惑。
代码片段
Connection connection = null;
connection = DriverManager.getConnection("jdbc:google:rdbms://name-of-instance");
Statement check = connection.createStatement();
java.sql.ResultSet resultset = null;
resultset = check.executeQuery("insert into table_name values (values-inserted-here);");
最佳答案
要执行更新、删除或插入数据库中任何数据的查询,您不能使用 executeQuery(String sql)
(check here the docs) ,但是executeUpdate(String sql)
相反。
所以代替:
check.executeQuery("insert into table_name values (values-inserted-here);");
你应该这样做:
check.executeUpdate("insert into table_name values (values-inserted-here);");
在插入、删除或更新中,ResultSet
始终为 null,这就是它给出该错误的原因。如果您使用executeUpdate
,错误应该消失。
希望对你有帮助!
关于java - Statement.executeQuery 的 ResultSet 不能为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30953426/