2017-05-30 3 views
0

私はavalidクエリ(有効な構文)である場合にのみ実行したいクエリ文字列を動的に生成しています。そうでなければ、私はそのクエリをスキップして、pl SQLの実行を続けます。どのようにそれを行うことができますか?動的に生成されたクエリの有効性を確認する

+1

'BEGIN ... EXCEPTION ... END;で囲みます。 –

+0

[' DBMS_SQL.PARSE() '](https://docs.oracle.com/cd/B28359_01/appdev.111)を試すこともできます。 /b28419/d_sql.htm#i997676)、構文が有効である場合にはセマンティックチェックを行い、** SQLも実行します**。 –

+0

ループ内で大量のクエリがチェックされていないと、実行速度が低下しますか? – Akhil

答えて

1

クエリの実行を別のBEGIN..EXCEPTION..ENDでネストします。例外的に、 "その他の場合"を処理します。構文エラーがある場合、それは例外ブロックで捕捉され、pl/sql実行のロジックの次の行がに移動されます。

関連する問題