Back to questions
Junior — Middle
62
Можете объяснить принцип работы операции отката транзакции?
Answer from AI
sobes.tech AI
Операция отката транзакции (rollback) используется для отмены всех изменений, сделанных в рамках текущей транзакции, если произошла ошибка или операция не может быть завершена успешно. В Java, например, при работе с базой данных через JDBC, транзакция начинается с отключения автокоммита (connection.setAutoCommit(false)), затем выполняются SQL-запросы. Если все прошло успешно, вызывается connection.commit(), чтобы сохранить изменения. Если возникает ошибка, вызывается connection.rollback(), чтобы вернуть базу данных в состояние до начала транзакции.
Это гарантирует целостность данных и предотвращает частично выполненные операции.
Пример на Java с JDBC:
Connection connection = dataSource.getConnection();
try {
connection.setAutoCommit(false);
// Выполнение нескольких операций с базой
// ...
connection.commit();
} catch (SQLException e) {
connection.rollback(); // Откат всех изменений
} finally {
connection.setAutoCommit(true);
connection.close();
}