Использование ResultSet для обновления строк - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь обновить некоторые строки, используя 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 голосов
/ 17 декабря 2018

Попробуйте этот код,

 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();
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...