Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comportement autoCommit par défaut de la connexion JDBC

À partir de la documentation Oracle JDBC :

Lorsqu'une connexion est créée, elle est en mode de validation automatique. Cela signifie que chaque instruction SQL individuelle est traitée comme une transaction et est automatiquement validée juste après son exécution. (Pour être plus précis, la valeur par défaut est qu'une instruction SQL est validée lorsqu'elle est terminée, pas lorsqu'elle est exécutée. Une instruction est terminée lorsque tous ses ensembles de résultats et son nombre de mises à jour ont été récupérés . Dans presque tous les cas, cependant, une instruction est terminée, et donc validée, juste après son exécution.)

L'autre chose est - vous avez omis les détails de création de connexion, donc je ne fais que deviner - si vous utilisez des frameworks, ou acquérez une connexion à partir d'une source de données ou d'un pool de connexions, le autocommit peut être désactivé off par ces frameworks/pools/datasources - la solution est de ne jamais faire confiance aux paramètres par défaut;-)