Documente Academic
Documente Profesional
Documente Cultură
com
http://www.hermosaprogramacion.com/2014/05/sql-transaccion-que-es/
Una transaccin es un conjunto secuencial de cambios a una base de datos. Las transacciones se emplean
como mecanismo de peticin para bases de datos de multiusuarios (concurrencia).
Los ejemplos mas bsicos de transacciones son la insercin, borrado y actualizacin de los datos de una tabla.
Aunque puede generarse una transaccin mas compleja que contenga una serie de pasos con respecto a
informacin particular de la base de datos.
Un ejemplo de una transaccin popular sera un retiro bancario, donde se deben consultar los datos y fondos del
usuario, luego determinar si es posible retirar el dinero o no, seguido actualizar la cuenta y finalmente salir de la
cuenta.
Esta transaccin asegura que ningn dato se pierda y mucho menos se pierda el dinero. Aunque otros usuarios
acceden en ese momento desde otra parte del pas a la base de datos del banco, el sistema gestor de bases de
datos administra la ejecucin de mltiples transacciones concurrentes para darte tu dinero sin problemas.
START TRANSACTION.
Ejemplo SQL SERVER 2008
A continuacin veremos una transaccin completa en SQL SERVER 2008 extrada del libro SQL Server 2008
SQL, Transact SQL: Diseo y creacin de una base de datos Escrito por Jrome Gabillaud. La transaccin
consiste en un aumento de tarifas para ciertos productos de una base de datos comercial. Veamos:
BEGIN TRAN aumento
UPDATE ARTICULOS
SET preciounit_art = preciounit_art*2
WHERE codigo_cat=01
SAVE TRAN P1
UPDATE ARTICULOS
SET preciounit_art = preciounit_art*1.1
WHERE codigo_cat=02
El aumento en la categoria 01 se conserva
ROLLBACK TRAN P1
Validacion
COMMIT TRAN aumento
En el ejemplo anterior vemos todas las sentencias de control de transaccin. Iniciamos la transaccin con BEGIN
TRAN y terminamos confirmando y guardando con COMMIT TRAN.