COMMIT¶
Effectue un commit dâune transaction ouverte dans la session en cours.
- Voir aussi :
Syntaxe¶
COMMIT [ WORK ]
ParamÚtres¶
WORK
Mot clĂ© facultatif qui assure la compatibilitĂ© avec dâautres systĂšmes de bases de donnĂ©es.
Notes sur lâutilisation¶
Si deux instructions COMMIT Ă la suite sont exĂ©cutĂ©es (dans le mĂȘme scope), la seconde est ignorĂ©e. Par exemple, dans le code suivant, le second COMMIT nâa aucun effet ; il nây a pas de transaction ouverte Ă valider.
BEGIN; INSERT INTO table1 ...; COMMIT; COMMIT; -- Ignored!
Les rĂšgles peuvent ĂȘtre plus complexes si vous utilisez des transactions autonomes scopĂ©es et des procĂ©dures stockĂ©es.
Exemples¶
Commencer une transaction, insérer des valeurs dans une table, puis terminer la transaction en la validant :
SELECT COUNT(*) FROM A1;
+----------+
| COUNT(*) |
|----------+
| 0 |
+----------+
BEGIN NAME T3;
SELECT CURRENT_TRANSACTION();
+-----------------------+
| CURRENT_TRANSACTION() |
|-----------------------+
| 1432071497832 |
+-----------------------+
INSERT INTO A1 VALUES (1), (2);
+-------------------------+
| number of rows inserted |
|-------------------------+
| 2 |
+-------------------------+
COMMIT;
SELECT CURRENT_TRANSACTION();
+-----------------------+
| CURRENT_TRANSACTION() |
|-----------------------+
| [NULL] |
+-----------------------+
SELECT LAST_TRANSACTION();
+--------------------+
| LAST_TRANSACTION() |
|--------------------+
| 1432071497832 |
+--------------------+
SELECT COUNT(*) FROM A1;
+----------+
| COUNT(*) |
|----------+
| 2 |
+----------+