ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

TRANSACCIONES

fariasabraham26 de Mayo de 2015

576 Palabras (3 Páginas)201 Visitas

Página 1 de 3

1- Introducción:

En esta unidad se hablara acerca de las transacciones, veremos su significado, su sintaxis, y sus comandos básicos, veremos un ejemplo clásico es decir una transacción en un banco en la quitamos saldo a una cuenta bancaria y lo añadimos a otra, si no somos capaces de abonar el dinero en la cuenta de destino, no debemos quitarlo de la cuenta de origen. Algunos comandos son AUTOCOMMIT, COMMIT Y ROLLBACK

1.1 Marco Teórico

2- Desarrollo del tema:

Que es transacción?

Vienen siendo un conjunto de instrucciones que se ejecutan todas o ninguna, (las instrucciones que se ejecutan vienen siendo INSERT, UPDATE, DELETE) es decir si una transacción tiene éxito, todas las modificaciones se harán sobre la base de datos, si una transacción contiene errores estos no se guardaran en la base de datos, una transacción ideal debe tener las propiedades ACID:

• Atomicidad. Es la propiedad que asegura que la operación se ha realizado o no, y por lo tanto ante un fallo del sistema no puede quedar a medias.

• Consistencia. Esta propiedad está ligada a la integridad referencial, es decir solo se pueden escribir datos válidos respetando los tipos de datos declarados y la integridad referencial.

• Aislamiento. Asegura que una operación no puede afectar a otras. Con esto se asegura que varias transacciones sobre la misma información sean independientes y no generen ningún tipo de error.

• Durabilidad. Cuando se completa una transacción con éxito los cambios se vuelven permanentes.

El ejemplo clásico de transacción es una transferencia bancaria, en la que quitamos saldo a una cuenta y lo añadimos en otra. Si no somos capaces de abonar el dinero en la cuenta de destino, no debemos quitarlo de la cuenta de origen.

Aunque ya en la práctica real una de estas propiedades es debilitada o simplificada para obtener un mejor rendimiento

Comandos utilizados en transacciones:

AUTOCOMMIT:

Por defecto mysql viene con AUTOCOMMIT Activado es decir se confirma automáticamente pero no queremos eso así que así podremos desactivar el AUTOCOMMIT

– SET autocommit = 0; -- Desactivamos

– SET autocommit = 1; -- Activamos

Con el AUTOCOMMIT desactivado habrá siempre una transacción abierta, que tendremos que terminar con las sentencias COMMIT o ROLLBACK

START TRANSACCION O BEGIN

Esta sintaxis da el inicio a una transacción y se tiene que terminar con ROLLBACK O COMMIT

COMMIT

La sentencia COMMIT hace que los cambios realizados en la transacción actual se conviertan en permanentes y se vuelvan visibles para el resto de usuarios

ROLLBACK

La sentencia ROLLBACK cancela todas las modificaciones producidas en la transacción actual.

SAVEPOINT

Los SAVEPOINT son puntos de control que se sitúan dentro de una transacción.

Cuando se efectúa un ROLLBACK al final de una transacción, éste puede ser total (se deshacen todas las operaciones de la transacción) o hasta uno de los puntos de control de la transacción. Los savepoint se crean así: SAVEPOINT nombre_punto_control;

Si creamos un punto de control con el mismo nombre que otro creado anteriormente, el viejo queda substituido por el nuevo.

Para deshacer los cambios hasta un determinado punto de control escribiremos:

ROLLBACK TO nombre_punto_control

Todos los puntos de control de la transacción actual se borran al ejecutar un COMMIT o un ROLLBACK (total).

Si hacemos un ROLLBACK hasta un punto de control, los puntos de control creados posteriormente se borran.

Podemos eliminar puntos de control con la sentencia:

– RELEASE SAVEPOINT nombre_punto_control;

EJEMPLO DE TRANSACION

Insert into cliente values (10,'cli4','Barcelona');

...

Descargar como (para miembros actualizados) txt (4 Kb)
Leer 2 páginas más »
Disponible sólo en Clubensayos.com