| Documentation PostgreSQL 8.3.23 > Référence > Commandes SQL > START TRANSACTION | |
| SHOW | TRUNCATE |
START TRANSACTION [ mode_transaction [, ...] ]
où mode_transaction fait partie de :
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
READ WRITE | READ ONLY
Cette commande débute un nouveau bloc de transaction. Si le niveau d'isolation ou le mode lecture/écriture est spécifié, la nouvelle transaction adopte ces caractéristiques, comme si SET TRANSACTION avait été exécuté. Cette commande est identique à la commande BEGIN.
Pour obtenir la signification des paramètres de cette instruction, on pourra se référer à SET TRANSACTION.
Le standard SQL n'impose pas de lancer START TRANSACTION pour commencer un bloc de transaction : toute commande SQL débute implicitement un bloc. On peut considérer que PostgreSQLTM exécute implicitement un COMMIT après chaque commande non précédée de START TRANSACTION (ou BEGIN). Ce comportement est d'ailleurs souvent appelé « autocommit ». D'autres systèmes de bases de données relationnelles offrent une fonctionnalité de validation automatique.
Le standard SQL impose des virgules entre les modes_transaction successifs mais, pour des raisons historiques, PostgreSQLTM autorise l'omission des virgules.
Voir aussi la section de compatibilité de SET TRANSACTION.