Compromiso, reversión y otros comandos de control de transacciones de MySQL
Hay dos métodos principales para las transacciones MYSQL
1. Iniciar, revertir, confirmar
comenzar o/iniciar transacción) Iniciar transacción
Revertir transacción para revertir
Confirmar transacción para confirmar
Transacción confirmada
Esta es la primera vez que se utiliza SET para cambiar el modo de confirmación automática de MySQL.
2. Utilice SET para cambiar el modo de confirmación automática de MySQL:
set autocommit=0 deshabilita la confirmación automática
set autocommit=1 habilita la confirmación automática commit
1. No importa si el commit automático es 1 o 0
Inicio
Una vez completada la transacción, solo los datos enviados tendrán efecto Después de la reversión, los datos se revertirán.
2. Cuando la confirmación automática es 0
Independientemente de si se inicia una transacción o no.
La reversión se revertirá solo cuando los datos enviados entren en vigor.
3. Si la confirmación automática es 1 y no se inicia ninguna transacción.
La reversión de llamadas es inútil. Porque la transacción se ha confirmado automáticamente.
Prueba de transacción 1
Prueba de transacción 2
La bandera es equivalente al nombre del punto de guardado definido
bandera de punto de guardado: el punto de guardado es permitido en la transacción Crear un punto de rescate. Una transacción puede tener múltiples puntos de guardado;
liberar el indicador de punto de guardado: eliminar el punto de guardado de la transacción; si no se especifica ningún punto de guardado, se generará una excepción
retroceder al indicador: retroceder; la transacción a marcar;
establecer transacción: se utiliza para establecer el nivel de aislamiento de la transacción. El motor de almacenamiento InnoDB proporciona los siguientes niveles de aislamiento para transacciones:
LECTURA NO COMPROMETIDA, LECTURA COMPROMETIDA, LECTURA REPETIBLE y SERIALIZABLE
SELECT @@ transacción_isolación
SELECT; @@ SESSION.transaction_isolation, @@SESSION.transaction_read_only