Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ManuelSimon/63e90030ccecdfb7dc4f65cdb347aa31 to your computer and use it in GitHub Desktop.
Save ManuelSimon/63e90030ccecdfb7dc4f65cdb347aa31 to your computer and use it in GitHub Desktop.

Revisions

  1. @emersoncortez emersoncortez created this gist Jan 8, 2013.
    14 changes: 14 additions & 0 deletions transacciones_rollback.sql
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,14 @@
    -- La cuenta A será cargada (se le quitará) y
    -- la cuenta B será abonada (se le sumará)

    -- Inicio de la transacción
    BEGIN;

    -- Cargando la cuenta A.
    UPDATE cuentas SET saldo_cuenta = saldo_cuenta - monto WHERE nombre_cuenta = 'A';

    -- Abonando la cuenta B.
    UPDATE cuentas SET saldo_cuenta = saldo_cuenta + monto WHERE nombre_cuenta = 'B';

    -- Asumiendo que el saldo de la cuenta A no puede ser negativo, abortamos la transacción
    ROLLBACK;