Les verrous posés par différentes requêtes SQL avec InnoDB
<<<
Quand est-ce que MySQL valide ou annule implicitement une transaction? Détection des blocages et annulation
>>>

16.11 Modèle de transactions et verrouillage InnoDB
16 Tables InnoDB
 Manuel de Référence MySQL 4.1 : Version Française

InnoDB et AUTOCOMMIT
InnoDB et SET ... TRANSACTION ISOLATION LEVEL ...
Lecture cohérente non-bloquante
Verrous de lecture SELECT ... FOR UPDATE et SELECT ... LOCK IN SHARE MODE
Verrou de clé suivante : éviter le problème des lignes fantômes
Un exemple de lecture cohérente avec InnoDB
Les verrous posés par différentes requêtes SQL avec InnoDB
->Quand est-ce que MySQL valide ou annule implicitement une transaction?
Détection des blocages et annulation
Comment gérer les blocages de verrous?

16.11.8 Quand est-ce que MySQL valide ou annule implicitement une transaction?

MySQL ouvre les connexions des clients en mode d'auto-validation, par défaut. Lorsque l'auto-validation est activée, MySQL fait une validation après chaque commande SQL, si la commande n'a pas retourné d'erreur.

Si vous n'avez pas de mode d'auto-validation, et que vous fermez une connexion sans valider explicitement vos transactions, alors MySQL annule votre transaction.

Si une erreur est retournée par une commande SQL, le comportement de la transaction dépend de l'erreur. Restrictions sur les tables InnoDB .

Les commandes SQL suivantes causent une validation implicite de la transaction courante :

  • 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 .
  • CREATE TABLE (elle valide uniquement avant MySQL 4.0.13 et si le log binaire MySQL est utilisé).
  • La commande CREATE TABLE de InnoDB est traitée comme une seule transaction. Cela signifie qu'une commande ROLLBACK ne va pas annuler la commande CREATE TABLE qui a été faite dans la transaction.

<< Quand est-ce que MySQL valide ou annule implicitement une transaction? >>
Les verrous posés par différentes requêtes SQL avec InnoDB Modèle de transactions et verrouillage InnoDB Détection des blocages et annulation