使用ResultSet更新行

时间:2018-12-17 19:50:52

标签: java sql jdbc

我正在尝试使用ResultSet更新一些行。基本上,语法的工作方式如下:

    ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE");

    while (rs.next()) {
        rs.updateString("something", "something_else");
        rs.updateRow();
    }

这对于简单的查询可以正常工作。但是,我要执行的查询包含where子句。

例如:SELECT * FROM TABLE WHERE LASTNAME = "A" AND FIRSTNAME = "B"

我可以想到的一种解决方案是从结果集中提取列值,然后添加if-else语句。

例如:

    ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE");
    while (rs.next()) {
        String lastname = rs.getString("lastname");
        String firstname = rs.getString("firstname");
        if ("A".equals(lastname) && "B".equals(firstname)){
            rs.updateString("something", "something_else");
            rs.updateRow();
        }
    }

还有什么我可以解决的问题吗?

1 个答案:

答案 0 :(得分:-1)

尝试此代码,

 ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE");
        while (uprs.next()) {
            String lastname = rs.getString("lastname");
            String firstname = rs.getString("firstname");
            if (lastname.equals("A") && firstname.equals("B")){
                rs.updateString("something", "something_else");
                rs.updateRow();
            }