Junior — Middle
Възможно ли е да замените обекта ResultSet и да го запазите веднага в базата данни?
sobes.tech AI
Отговор от AI
Обектът ResultSet в Java представлява резултата от изпълнението на SQL заявка и обикновено се използва за четене на данни от базата данни. Не е предназначен за замяна или директно запазване в базата.
Ако трябва да промените данните, получени чрез ResultSet, и да запазите промените в базата, обикновено се използва updatable ResultSet или се изпълняват отделни SQL заявки INSERT, UPDATE, DELETE.
Пример за използване на актуализируем ResultSet:
Statement stmt = connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("SELECT * FROM table_name");
while(rs.next()) {
rs.updateString("column_name", "new_value");
rs.updateRow(); // запазва промените в базата
}
Следователно, не може просто да замените обекта ResultSet и да го запазите директно в базата — трябва да използвате методи за актуализация или да изпълнявате отделни заявки.