En las tecnologías de bases de datos , una reversión es una operación que devuelve la base de datos a algún estado anterior. Las reversiones son importantes para la integridad de la base de datos , porque significan que la base de datos se puede restaurar a una copia limpia incluso después de realizar operaciones erróneas. Son cruciales para recuperarse de fallas en el servidor de bases de datos; al revertir cualquier transacción que estaba activa en el momento del bloqueo, la base de datos se restaura a un estado coherente.
La función de reversión generalmente se implementa con un registro de transacciones , pero también se puede implementar a través del control de concurrencia de múltiples versiones .
Retroceso en cascada
Se produce una reversión en cascada en los sistemas de bases de datos cuando una transacción (T1) provoca una falla y se debe realizar una reversión. Otras transacciones que dependen de las acciones de T1 también deben revertirse debido a la falla de T1, lo que provoca un efecto en cascada. Es decir, la falla de una transacción hace que muchas fallen.
Las técnicas prácticas de recuperación de bases de datos garantizan la reversión sin cascada, por lo que una reversión en cascada no es un resultado deseable. La reversión en cascada está programada por dba.
SQL
SQL se refiere al lenguaje de consulta estructurado, un tipo de lenguaje utilizado para acceder, actualizar y manipular bases de datos. En SQL , ROLLBACK
es un comando que hace que todos los cambios de datos desde el último BEGIN WORK
, o START TRANSACTION
que sean descartados por los sistemas de administración de bases de datos relacionales (RDBMS), de modo que el estado de los datos se "deshaga" a la forma en que estaban antes de que se aplicaran esos cambios. hecho.
Una ROLLBACK
declaración también liberará cualquier punto de guardado existente que pueda estar en uso.
En la mayoría de los dialectos SQL, los ROLLBACK
s son específicos de la conexión. Esto significa que si se realizan dos conexiones a la misma base de datos, una ROLLBACK
conexión realizada en una no afectará a ninguna otra conexión. Esto es vital para una concurrencia adecuada .
Ver también
Referencias
- Ramez Elmasri (2007). Fundamentos de los sistemas de bases de datos . Pearson Addison Wesley . ISBN 0-321-36957-2.
- "Transacción ROLLBACK" , Microsoft SQL Server.
- "Comandos SQL" , MySQL.