Ya hemos visto como controlar errores. Ahora toca decirle si las grabamos o no.
Tomamos como base nuestra base de ejemplo
y el código
Vamos a modificarlo para utilizar COMMIT y ROLLBACK.
Si una transacción es valida, se hace. La instrucción COMMIT garantiza que todas las modificaciones de la transacción se conviertan en una parte permanente de la base de datos. La instrucción COMMIT también libera recursos que utiliza la transacción como, por ejemplo, los bloqueos.
Hay que utilizar COMMIT TRANSACTION solo en el punto donde todos los datos a los que hace referencia la transacción sean lógicamente correctos.
Si se produce un error en una transacción o el usuario decide cancelar la transacción, hay que echar para tras la transaccion. Esto se hace con la instrucción ROLLBACK que devuelve los datos al estado en que estaban al inicio de la transacción. La instrucción ROLLBACK también libera los recursos que mantiene la transacción.
Vamos con un ejemplo.
y en la tabla
Vemos que se ha insertado el registro Gabriel.
Ahora vamos con el caso contrario ….
Nos da error y por lo tanto Rollback hace que la tabla
No se grabe el campo Alberto.
Principalmente este artículo es para tener una idea de como se debería hacer.
Vamos a ver los Triggers y acabamos con la certificación 70-461. Después toca la 462