2017-02-10 81 views
-1

多くの時間がかかる削除文を実動環境で実行する必要があり、サーバーは30分後にすべての接続をクローズしています(ログに表示されているものからORA-03135)。Oracle - ORA-03135接続が失われた場合のトランザクションはどうなりますか?

私はdeleteステートメントを開始し、サーバーが接続を終了するとどうなりますか?ステートメントはサーバー上で実行を終了するか、すぐにシャットダウンしてロールバックされますか?この場合、SQL * Plus set autocommit onコマンドは役に立ちますか?

答えて

1

チェックマニュアル:

  • ユーザーはせずに、COMMITまたはROLLBACKステートメントを発行します。トランザクションのhttps://docs.oracle.com/database/121/CNCPT/transact.htm#CNCPT037

    終わり、次のいずれかのアクションが発生したときにトランザクションが終了
    SAVEPOINT節。

  • ユーザーは、CREATE、DROP、RENAME、またはALTERなどのDDLコマンドを実行します。
  • ユーザーは、ほとんどのOracle Databaseユーティリティおよびツールから正常に終了し、現在のトランザクションを暗黙的にコミットします。ユーザーの切断時のコミット動作は、アプリケーションに依存し、構成可能です。
  • クライアントプロセストランザクションが暗黙的にトランザクション テーブルに格納されたメタデータおよびUNDOセグメントを使用してバック圧延ことせる、異常を終了します。
+0

あなたの削除が30分を超えることは妥当ですか? – BobC

関連する問題