No busques más por internet porque llegaste al espacio exacto, tenemos la respuesta que quieres sin problemas.
SAVEPOINT: defina un nuevo punto de guardado dentro de la transacción actual
Sinopsis
SAVEPOINT savepoint_name
Descripción
SAVEPOINT
establece un nuevo punto de guardado dentro de la transacción actual.
Un punto de guardado es una marca especial dentro de una transacción que permite revertir todos los comandos que se ejecutan después de que se estableció, restaurando el estado de la transacción al que tenía en el momento del punto de guardado.
Parámetros
savepoint_name
-
El nombre que se dará al nuevo punto de guardado.
notas
Use ROLLBACK TO SAVEPOINT para retroceder a un punto de guardado. Use RELEASE SAVEPOINT para destruir un punto de guardado, manteniendo los efectos de los comandos ejecutados después de que se estableció.
Los puntos de guardado solo se pueden establecer dentro de un bloque de transacción. Puede haber múltiples puntos de guardado definidos dentro de una transacción.
Ejemplos
Para establecer un punto de guardado y luego deshacer los efectos de todos los comandos ejecutados después de su establecimiento:
BEGIN;INSERTINTO table1 VALUES(1);SAVEPOINT my_savepoint;INSERTINTO table1 VALUES(2);ROLLBACKTOSAVEPOINT my_savepoint;INSERTINTO table1 VALUES(3);COMMIT;
La transacción anterior insertará los valores 1 y 3, pero no el 2.
Para establecer y luego destruir un punto de guardado:
BEGIN;INSERTINTO table1 VALUES(3);SAVEPOINT my_savepoint;INSERTINTO table1 VALUES(4);RELEASESAVEPOINT my_savepoint;COMMIT;
La transacción anterior insertará tanto 3 como 4.
Compatibilidad
SQL requiere que un punto de guardado se destruya automáticamente cuando se establece otro punto de guardado con el mismo nombre. En PostgreSQL, se mantiene el antiguo punto de guardado, aunque solo se usará el más reciente al retroceder o liberar. (Liberar el nuevo punto de guardado con RELEASE SAVEPOINT
hará que el anterior vuelva a ser accesible para ROLLBACK TO SAVEPOINT
y RELEASE SAVEPOINT
.) De lo contrario, SAVEPOINT
es totalmente compatible con SQL.
Ver también
COMENZAR, COMPROMETER, LIBERAR SAVEPOINT, ROLLBACK, ROLLBACK TO SAVEPOINT
Anterior | Arriba | próximo |
VOLVER AL PUNTO DE GUARDADO | Casa | ETIQUETA DE SEGURIDAD |
Sección de Reseñas y Valoraciones
Recuerda algo, que tienes concesión de aclarar si descubriste tu cuestión a tiempo.