El lenguaje de transacción (TCL) es una parte de SQL que se utiliza para gestionar transacciones y garantizar la integridad de los datos en una base de datos. Algunas de las principales sentencias TCL en SQL son:
- BEGIN TRANSACTION. Se utiliza para iniciar una transacción, lo que permite realizar varias operaciones en la base de datos como una sola unidad.
- COMMIT. Se utiliza para confirmar los cambios realizados durante una transacción y hacerlos permanentes en la base de datos.
- ROLLBACK. Se utiliza para deshacer los cambios realizados durante una transacción y revertir la base de datos a su estado anterior.
- SAVEPOINT. Establece un punto de guardado dentro de una transacción, permitiendo deshacer cambios posteriores a ese punto.
- RELEASE SAVEPOINT. Elimina un punto de guardado creado anteriormente.
A continuación se presenta un ejemplo de cómo utilizar estas sentencias TCL en SQL,
- Iniciar una transacción,
BEGIN TRANSACTION;
-- aquí van las instrucciones SQL que se deben ejecutar como una transacción
COMMIT;
-
- Se inicia una transacción con BEGIN TRANSACTION y luego se inserta, se modifica y se borra datos en la tabal «customers». Finalmente se confirman los datos.
BEGIN TRANSACTION;
INSERT INTO customers (id, name, email)
VALUES (1, 'John Smith', 'john@example.com');
UPDATE customers
SET email = 'john.smith@example.com'
WHERE id = 1;
DELETE FROM customers
WHERE id = 2;
COMMIT;
Es importante tener en cuenta que las transacciones deben utilizarse cuidadosamente para garantizar la integridad de los datos en la base de datos. Si se realizan varias operaciones en una transacción y alguna de ellas falla, es posible utilizar la sentencia ROLLBACK para deshacer todos los cambios realizados durante la transacción y revertir la base de datos a su estado anterior. De esta manera, se evita que los datos queden en un estado inconsistente o corrupto.