Diversos

Solo disponible en BuenasTareas
  • Páginas : 3 (562 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de noviembre de 2010
Leer documento completo
Vista previa del texto
13.4.1. Sintaxis de START TRANSACTION, COMMIT y ROLLBACK
Por defecto, MySQL se ejecuta con el modo autocommit activado. Esto significa que en cuanto ejecute un comando que actualice (modifique) unatabla, MySQL almacena la actualización en disco.
Si usa tablas transaccionales (como InnoDB o BDB), puede desactivar el modo autocommit con el siguiente comando:
SET AUTOCOMMIT=0;
Trasdeshabilitar el modo autocommit poniendo la variable AUTOCOMMIT a cero, debe usar COMMIT para almacenar los cambios en disco o ROLLBACK si quiere ignorar los cambios hechos desde el comienzo de la transacción.Si quiere deshabilitar el modo autocommit para una serie única de comandos, puede usar el comando START TRANSACTION:
START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATEtable2 SET summary=@A WHERE type=1;
COMMIT;
Con START TRANSACTION, autocommit permanece deshabilitado hasta el final de la transacción con COMMIT o ROLLBACK. El modo autocommit vuelve a su estadoprévio.
BEGIN y BEGIN WORK se soportan como alias para START TRANSACTION para iniciar una transacción. START TRANSACTION es sintaxis SQL estándar y es la forma recomendada para iniciar una transacciónad-hoc . El comando BEGIN difiere del uso de la palabra clave BEGIN que comienza un comando compuesto BEGIN ... END. El último no comienza una transacción. Consulte Sección 19.2.7, “Sentencia compuestaBEGIN ... END”.
Puede comenzar una transacción así:
START TRANSACTION WITH CONSISTENT SNAPSHOT;
La cláusula WITH CONSISTENT SNAPSHOT comienza una lectura consistente para motores dealmacenamiento capaces de ello. Actualmente, esto se aplica sólo a InnoDB. El efecto es el mismo que realizar un START TRANSACTION seguido por un SELECT desde cualquier tabla InnoDB . Consulte Sección 15.10.4,“Lecturas consistentes que no bloquean”.
Comenzar una transacción provoca que se realice un UNLOCK TABLES implícito.
Tenga en cuenta que si no usa tablas transaccionales, cualquier cambio se...
tracking img