AD

¿Ya dominas lo básico? Un curso estructurado de SQL es la vía rápida para dar el salto.

Ver cursos de SQL en Udemy

Enlace de afiliado. No te cuesta nada extra.

🗄️Lecciones de SQL
Lección 12 / 50

Entender las transacciones

En esta lección agruparás varias operaciones para que se apliquen todas o ninguna, que es lo que garantiza que el dinero no desaparezca a mitad de una transferencia.

BEGIN TRANSACTION; abre el bloque, las sentencias siguientes quedan pendientes, y COMMIT; las confirma todas de golpe. Si algo va mal, ROLLBACK; las deshace todas. Es imposible que quede aplicada solo una parte.

El código de ejemplo transfiere 300 de una cuenta a otra: resta a Ana y suma a Carlos dentro de la misma transacción. Si el sistema se cayera entre las dos operaciones, sin transacción el dinero se habría evaporado.

El detalle que hay que recordar es que una transacción abierta y no confirmada mantiene bloqueos sobre las filas y puede dejar esperando a otros procesos. Las transacciones deben ser lo más cortas posible; nunca se deja una abierta esperando a que un usuario rellene un formulario.

Toda operación de negocio con varios pasos — cobrar y reducir el stock, crear un pedido y sus líneas — va dentro de una transacción. Es una de esas cosas invisibles cuando funcionan y catastróficas cuando faltan.

SQL
SALIDA

💡 El motor de SQL puede tardar unos segundos en cargarse la primera vez que ejecutas código.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)