6

「自動コミットがオフ」の JDBC 接続を使用して PreparedStatement を作成する場合、commit() を呼び出してトランザクションを永続的にする必要がありますか? それとも準備呼び出しだけで十分ですか? ステートメントを準備し、後で実行するために保持したいだけであることに注意してください。

どうもありがとう!

4

1 に答える 1

9

答えは次のとおりです。はい、commitを呼び出す必要があります。

「準備」ステップは、サーバーでのトランザクション処理に関連することは何もしません。

トランザクションを開始するには、を呼び出すexecuteUpdate()(またはexecute())必要があります(使用されているSQLが実際にトランザクションを開始すると仮定します)

自動コミットなしでPreparedStatementを使用するには、次の手順が必要です。

  1. ステートメントを準備する
  2. パラメータ値を設定します
  3. 呼び出しexecuteUpdate()(またはexecute()ステートメントのタイプによっては)
  4. 電話Connection.commit()

物事を明確にするために:呼び出しは必要ありprepareStatement()ませcommit()

于 2012-05-30T11:05:08.703 に答える