The world's most popular open source database
MySQL comienza cada conexión de cliente con el modo de ejecución automática (autocommit) habilitado por defecto. Cuando la ejecución automática está habilitada, MySQL realiza la confirmación luego de cada sentencia SQL, si dicha sentencia no devuelve un error.
Si se tiene desactivado el modo de ejecución automática y se cierra una conexión sin hacer una confirmación explícita de una transacción, MySQL cancelará dicha transacción.
Si una sentencia SQL devuelve un error, la confirmación o cancelación dependen del error. Consulte Sección 15.15, “Tratamiento de errores de InnoDB”.
Las siguientes sentencias SQL (y sus sinónimos) provocan en MySQL una confirmación implícita de la transacción en curso:
ALTER TABLE, BEGIN,
CREATE INDEX, DROP
DATABASE, DROP INDEX,
DROP TABLE, LOAD MASTER
DATA, LOCK TABLES,
RENAME TABLE, SET
AUTOCOMMIT=1, START
TRANSACTION, TRUNCATE,
UNLOCK TABLES.
Antes de MySQL 5.0.8, CREATE TABLE provocaba la
confirmación si se empleaba el registro binario (binary logging). A
partir de MySQL 5.0.8, las sentencias
CREATE TABLE,
TRUNCATE TABLE, DROP
DATABASE, y CREATE DATABASE provocan
una confirmación implícita.
La sentencia CREATE TABLE en
InnoDB se procesa como una transacción
individual. Esto significa que un ROLLBACK
emitido por el usuario no cancelará las sentencias CREATE
TABLE hechas durante una transacción.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.

