Sobes.tech
Junior — Middle
92

¿Puede explicar el principio de funcionamiento de una operación de reversión de transacción?

Respuesta de la IA

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