Вы находитесь на странице: 1из 8

Transacciones

Taller de base de datos

Introducción
Transacciones
Una transacción es una unidad de trabajo compuesta
por diversas tareas, cuyo resultado final debe ser que
se ejecuten todas o ninguna de ellas.
Transacciones
Normalmente representan cualquier cambio en la
base de datos, y tienen dos objetivos principales:

Proporcionar secuencias de trabajo fiables que permitan


poder recuperarse fácilmente ante errores y mantener
una base de datos consistente.

Proporcionar aislamiento entre programas accediendo a la


vez a la base de datos.
Transacciones
Una transacción es
una propagación de uno o más
cambios en la base de datos, ya
sea cuando se crea, se modifica
o se elimina un registro.

En la práctica suele consistir en


la agrupación de consultas
SQL y su ejecución como parte
de una transacción.
Propiedades de las transacciones

Aseguran que todas las operaciones dentro de la secuencia de trabajo se


Atomicidad completen satisfactoriamente. Si no es así, la transacción se abandona en el


punto del error y las operaciones previas retroceden a su estado inicial.


Aseguran que la base de datos cambie
Consistencia estados en una transacción exitosa.


Permiten que las operaciones sean aisladas
Aislamiento y transparentes unas de otras.


Aseguran que el resultado o efecto de una transacción
Durabilidad completada permanezca en caso de error del sistema.
Control de transacciones
Existen tres comandos básicos de control en
las transacciones SQL:
COMMIT

• Sirve para guardar los cambios.

ROLLBACK

• Sirve para abandonar la transacción y deshacer los


cambios.

SAVEPOINT

• Crea checkpoints, donde poder deshacer la transacción.


Definición de transacciones
Generalmente se pueden definir de 3
maneras:
• De confirmación automática
• Implícitas
• Explícitas
Una transacción explícita se define de manera general con
una instrucción que marca su inicio, y dos posibles
instrucciones que marcan su final en función de si debe
tener éxito o debe fracasar en bloque.
Transacciones en SQL Server
En SQL Server las instrucciones equivalentes
son:
BEGIN TRANSACTION

• Marca el inicio de una transacción.

ROLLBACK TRANSACTION

• Deshace la transacción en caso de haber un problema.

COMMIT TRANSACTION

• Confirma el conjunto de operaciones, convirtiendo los datos


en definitivos.

Вам также может понравиться