使用带有MySQL的JDBC行集获取错误“ ResultSet无法更新”

时间:2018-09-25 07:13:23

标签: mysql

我遇到错误:

  

“结果集不可更新”

在MySQL版本中使用 JDBC RowSet。 8 。 并设置所有参数,例如: -setReadOnly(false) -setConcurrency(CONCUR_UPDATEABLE)-尽管默认情况下使用RowSet是可更新的。

另一方面,当我更改为使用带有PreparedStatement的ResultSet时,使用相同的SQL命令,相同的数据库,相同的连接url,更新表的过程就会成功。

此处为部分代码:

rowSet = RowSetUtility.getRowSetFactory().createJdbcRowSet();
rowSet.setUserName("userName");
rowSet.setPassword("userPassword");
rowSet.setUrl("jdbc:mysql://localhost:3306/dkoplak?useSSL=false");
rowSet.setCommand("SELECT * FROM tableName");
rowSet.setAutoCommit(false);
rowSet.setReadOnly(false);
rowSet.execute();
rowSet.first();
if (rowSet.getConcurrency() == ResultSet.CONCUR_UPDATABLE) {

    rowSet.updateString("company_name", "DDDDDDDDDDDkoplak");
    rowSet.updateRow();
    rowSet.commit();
}

请问有人可以给我一个提示。

0 个答案:

没有答案