sql server 2012 - transacciones - Cómo deshacer el comando de eliminar sin usar la transacción
transacciones en sql server pdf (3)
No puede ROLLBACK
una operación sin una transacción. Probablemente pueda usar transacciones implícitas , pero aún necesita llamar a COMMIT
o ROLLBACK
explícitamente. Sin embargo, para un mejor control, es mejor ajustar las instrucciones en un bloque BEGIN TRANSACTION...COMMIT / ROLLBACK
todos modos. De esta forma evitará cualquier confusión y la necesidad de utilizar la configuración IMPLICIT_TRANSACTION
.
¿Cómo deshacer el comando de eliminar sin usar la transacción? si no podemos, ¿cuál es la diferencia entre Truncar y eliminar?
Puede revertir DELETE o TRUNCATE (y la mayoría de las demás operaciones) si y solo si son parte de una transacción que aún no se ha comprometido. Alternativamente, puede restaurar los datos eliminados / truncados de una copia de seguridad.
Hay muchas diferencias entre TRUNCATE y DELETE. En particular, TRUNCATE solo puede vaciar una tabla mientras que DELETE elimina solo las filas que especifique. TRUNCATE desasigna y registra los datos en el nivel de página en lugar del nivel de fila, lo que generalmente hace que TRUNCATE sea un método más eficiente que DELETE para eliminar todo el contenido de una tabla.
No puede retroceder en este caso, pero cuando usa el Modelo de recuperación total , puede volver su base de datos al momento anterior al que emitió el comando de eliminación.