Встречается на собеседованиях • сегодня
Можно ли поменять значение в ResultSet и сразу же добавить его в базу данных
Нет, ResultSet предназначен только для чтения данных из БД, а не для их модификации. Для изменения данных в базе нужно использовать UPDATE или INSERT через Statement/PreparedStatement.
Пример обновления данных:
java
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users WHERE id = 1");
if (rs.next()) {
String newName = "NewName";
PreparedStatement pstmt = conn.prepareStatement("UPDATE users SET name = ? WHERE id = 1");
pstmt.setString(1, newName);
pstmt.executeUpdate();
}
text
Исключение - `ResultSet.CONCUR_UPDATABLE`, но он поддерживается не всеми СУБД и драйверами. Даже в этом случае изменения в `ResultSet` требуют отдельного вызова `updateRow()`.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы