PostgreSQL – VOLVER

El comando ROLLBACK de PostgreSQL se utiliza para deshacer los cambios realizados en las transacciones. Como sabemos, las transacciones en lenguajes de bases de datos se utilizan para grandes cálculos, por ejemplo, en bancos. Supongamos que el empleado del banco incrementó el registro de saldo de la persona equivocada por error, entonces simplemente puede retroceder y volver al estado anterior.

Sintaxis:

ROLLBACK TRANSACTION;

(or)

ROLLBACK;

(or)

ROLLBACK WORK;

Para comprender la importancia del comando ROLLBACK, primero construyamos una tabla con ejemplos.

CREATE TABLE BankStatements (
    customer_id serial PRIMARY KEY,
    full_name VARCHAR NOT NULL,
    balance INT
);

Ahora vamos a insertar datos de algunos clientes

INSERT INTO BankStatements (
    customer_id ,
    full_name,
    balance
)
VALUES
    (1, 'Sekhar rao', 1000),
    (2, 'Abishek Yadav', 500),
    (3, 'Srinivas Goud', 1000);

Ahora que la tabla está lista, entenderemos sobre el compromiso.

Ejemplo 1:  

Agregaremos los datos a la tabla en la transacción usando el compromiso

BEGIN;

 INSERT INTO BankStatements (
     customer_id,
    full_name,
        balance
)
    VALUES (
       4, 'Priya chetri', 500
       
)
;

SELECT * FROM BankStatements;
        
ROLLBACK;

SELECT * FROM BankStatements;

Producción:

Ejemplo 2:

BEGIN;


    UPDATE BankStatements
      SET balance = balance - 500
      WHERE 
      customer_id = 1;
      
      // displaying data before
      // committing the transaction
      SELECT customer_id, full_name, balance
      FROM BankStatements;
      
      UPDATE BankStatements
      SET balance = balance + 500
      WHERE 
      customer_id = 2;
 
       
ROLLBACK;

// displaying data after
// committing the transaction
SELECT customer_id, full_name, balance
FROM BankStatements;

Producción:

Publicación traducida automáticamente

Artículo escrito por dadimadhav y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *