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 effectuant un commit :
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 | ----------+