Oracle JDBCドキュメントから:
接続が作成されると、自動コミットモードになります。これは、個々のSQLステートメントがトランザクションとして扱われ、実行直後に自動的にコミットされることを意味します。 (より正確には、デフォルトでは、SQLステートメントは実行時ではなく、完了時にコミットされます。ステートメントは、すべての結果セットと更新カウントが取得されたときに完了します 。ただし、ほとんどの場合、ステートメントは実行された直後に完了し、したがってコミットされます。)
もう1つは、接続作成の詳細を省略したため、推測しているだけです。一部のフレームワークを使用している場合、またはデータソースや接続プールから接続を取得している場合は、autocommit
off
をオフにすることができます それらのフレームワーク/プール/データソースによる-解決策は、デフォルト設定を決して信頼しないことです;-)