Sobes.tech
Назад к вопросам
Junior — Middle
61

Можете объяснить принцип работы операции отката транзакции?

Ответ от нейросети

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();
}