2017-12-08 14 views
0

クエリのパッケージを作成することが可能であることを知りたい場合、plsql開発者は次のクエリにジャンプしてすべてのクエリが実行されるまで終了すると、どのクエリが失敗したかが表示されます。1つのクエリが失敗した場合、次のsqlクエリにジャンプします

たとえば、5つのクエリが設定されています。 私はこれらの5つのクエリを含む1つのパッケージを作成しました。今私は3番目のクエリが実行中に失敗した場合、plsql開発者が停止してはならず、4番目のクエリにジャンプしてすべてのレミングングクエリを実行するようなパッケージを作成したい。すべてのクエリ結果の最後に「3番目のクエリが失敗しました」と表示されます。

+0

私は[Pl/Sqlで例外処理のようにキャッチしよう]と考えています(https://stackoverflow.com/questions/12527507/try-catch-like-exception-handling-in-pl-sql)この回答は、 。私はそれが私のために働いた –

+0

私はあなたが文に行くを使用する必要がありますと思う。あなたに行くと、質問にジャンプすることができます。あなたはそれが欲しいですか? –

+0

'plsqldeveloper'タグから、Oracleを使用していると仮定できますか? –

答えて

-2

try catchを使用できます。 |

はここ


{sql_statementはをTRY BEGIN構文ですstatement_block}
終了TRY
BEGIN CATCH
[{sql_statement | statement_block}]
END CATCH
[; ]

+0

クエリにエラーがあるとロールバックを避けるためにこれを使用できます –

+0

これはplsql開発者で動作しますか? – Paras

+0

ロジックはすでに存在します。あなたのニーズに合った適切な構文を探してください。 –

0

クエリをパラメータとして取得するためにqueryExecutor proecureを作成します。 プロシージャの開始で監査ログが1つのテーブルに記録されます。 完了/例外ブロックが完了した/失敗した監査ログエントリを更新します。 DBMS Schedulerを使用してqueryExcutoreを呼び出します。各クエリは独立して実行されます。

whileループでは、サブミットされたすべてのジョブが完了/失敗ステータスであるかどうかをチェックします。このチェッカーを実行できます。一度両方がループから等しくなると終了します。

関連する問題