オラクル プロ *c/c++
EXEC SQL WHENEVER SQLERROR DO break;
このステートメントは実際に何をしますか? これにより、次のすべての exec sql ステートメントに break ステートメントが挿入されますか?
do break の範囲を制限するには?
オラクル プロ *c/c++
EXEC SQL WHENEVER SQLERROR DO break;
このステートメントは実際に何をしますか? これにより、次のすべての exec sql ステートメントに break ステートメントが挿入されますか?
do break の範囲を制限するには?
壊れてください
実際の「break」ステートメントがプログラムに配置されます。このアクションはループで使用します。WHENEVER 条件が満たされると、プログラムは内部のループを終了します。
したがって、エラーが発生するたびに abreak
が発行されますが、これはループの外ではあまり意味がありません。特定のステートメントの後の動作をリセットする場合は、 を発行EXEC SQL WHENEVER SQLERROR CONTINUE;
して、デフォルトのエラー処理動作にリセットします。
継続する
可能であれば、プログラムは次のステートメントで引き続き実行されます。これはデフォルトのアクションであり、WHENEVER ディレクティブを使用しないのと同じです。これを使用して、条件チェックをオフにすることができます。
事実上、ステートメントを 2 つのディレクティブの間に挟んで、WHENEVER
そのステートメントにのみ適用されるようにすることができます。
ステートメントは C/C++ マクロのように機能します。宣言ポイントからファイルの終わりまで、または再宣言まで適用されるため、再宣言する必要があります。