Rollback
Rollback
Rollback
ROLLBACK
Sentencia ROLLBACK
Versin 9.7.0, Versin 11.1.0, Versin 10.5.0, Versin 10.1.0, Versin 9.8.0,
Versin 9.5.0
La sentencia ROLLBACK se utiliza para restituir los cambios que se han hecho en
la base de datos dentro de una unidad de trabajo o punto de salvaguarda.
Invocacin
Esta sentencia se puede incorporar a un programa de aplicacin o emitir mediante
el uso de sentencias de SQL dinmico. Se trata de una sentencia ejecutable que
puede prepararse de forma dinmica.
Autorizacin
No se necesita.
Sintaxis
.-WORK-.
>>-ROLLBACK--+------+------------------------------------------->
>--+--------------------------------------------+--------------><
'-TO SAVEPOINT--+--------------------------+-'
'-nombre-punto-salvaguarda-'
Descripcin
La unidad de trabajo en la que se ejecuta la sentencia ROLLBACK se termina y se
inicia una nueva unidad de trabajo. Se restituyen todos los cambios realizados en
la base de datos durante la unidad de trabajo.
Sin embargo, las sentencias siguientes no estn bajo el control de la transaccin y
los cambios que realicen sern independientes de la emisin de la sentencia
ROLLBACK:
La generacin de valores de secuencia y de identidad no estn bajo el control de
la transaccin. Los valores generados y consumidos por la expresin-nextval o por
la insercin de filas en una tabla que contiene una columna de identidad son
Ejemplo
Suprima las modificaciones realizadas desde el ltimo punto de confirmacin o
retrotraccin.
ROLLBACK WORK
Commit
En el contexto de la Ciencia de la computacin y la gestin de datos, commit
(accin de comprometer) se refiere a la idea de consignar un conjunto de cambios
"tentativos" de forma permanente. Un uso popular es al final de una transaccin de
base de datos.
Una sentencia COMMIT en SQL finaliza una transaccin de base de datos dentro
de un sistema gestor de base de datos relacional (RDBMS) y pone visibles todos
los cambios a otros usuarios. El formato general es emitir una sentencia BEGIN
WORK, una o ms sentencias SQL, y entonces la sentencia COMMIT.
Alternativamente, una sentencia ROLLBACK se puede emitir, la cual deshace todo
el trabajo realizado desde que se emiti BEGIN WORK. Una sentencia COMMIT
publicar cualquiera de los savepoints (puntos de recuperacin) existentes que
puedan estar en uso.
En trminos de transacciones, lo opuesto de commit para descartar los cambios
"en tentativa" de una transaccin, es un rollback.
COMMIT en SQL
El comando COMMIT es una comando usado en transacciones de SQL. Su
funcin es guardar las transacciones realizadas en la base de datos. Normalmente
los SGBD vienen configurados para guardar las transacciones automticamente,
pero si deseamos, podemos deshabilitar dicha opcin para algunos usuarios.
SQL COMMIT
Si se desea deshabilitar la autoconfirmacin en SQL SERVER usa la siguiente
sentencia:
SET IMPLICIT_TRANSACTIONS ON
En el caso de MYSQL usa:
SET AUTOCOMMIT=0
Su uso es sencillo, simplemente ubicamos el comando luego de la transaccin y
listo.
Tabla CLIENTE
Ahora eliminaremos los registros cuya edad sea 21 aos y confirmaremos con
COMMIT:
DELETE FROM CLIENTE WHERE EDAD=21;
COMMIT;
Como resultado obtenemos la siguiente tabla: