Академический Документы
Профессиональный Документы
Культура Документы
Las transacciones aportan una fiabilidad superior a las bases de datos. Con el uso de
transacciones podemos tener la certeza de que nunca nos quedaremos a medio camino
de su ejecución. De hecho, podríamos decir que las transacciones aportan una
característica de "deshacer" a las aplicaciones de bases de datos.
siguiente:
COMMIT Y ROLLBACK
Sin embargo, en cambio, una transacción siempre debe acabar explícitamente con
alguna de las sentencias siguientes:
Ejemplo 1:
Estas dos consultas deben trabajar bien, ¿pero qué sucede si ocurre algún imprevisto
y "se cae" el sistema después de que se ejecuta la primer consulta, pero la segunda aún
no se ha completado? La persona1 tendrá una cantidad de dinero removida de su cuenta,
y creerá que ha realizado su pago, sin embargo, la persona2 estará enfadada puesto
que pensará que no se le ha depositado el dinero que le deben. En este ejemplo tan
sencillo se ilustra la necesidad de que las consultas sean ejecutadas de manera conjunta,
o en su caso, que no se ejecute ninguna de ellas. Es aquí donde las transacciones toman
un papel muy importante.
Ejemplo 2:
Lecturas consistentes
Por default, las tablas ejecutan una lectura consistente (consistent read). Esto significa
que cuando una sentencia SELECT es ejecutada, MySQL regresa los valores presentes
en la base de datos hasta la transacción más reciente que ha sido completada. Si alguna
transacción está en progreso, los cambios hechos por alguna sentencia INSERT o
UPDATE no serán reflejados. Sin embargo, existe una excepción: las transacciones
abiertas si pueden ver sus propios cambios.
Creamos una base de datos y una tabla con dos registros para muestra de ejemplo
Actualizamos el registro
Verificamos lo sucedido
Si queremos deshacer los cambios, entonces ejecutamos un ROLLBACK.
Compromiso y retroceso
Bibliografía
Camps pare, r., Casillas Santillán, L., Costal Costa, D., Gibert Ginestà, M., Martín Escofet, C., & Pérez
Silberschatz, A., & F. Korth, H. (2002). FUNDAMENTOS DE BASES DE DATOS. Madrid: McGRAW-
HILL/INTERAMERICANA DE ESPAÑA, S. A. U.