エラー コードと関連するエラー メッセージを保持する次のテーブル構造があります。
ERR_CODE ERR_MESSAGE
CN001 Invalid Username :USERNM
CN002 Invalid Password :PWD
私の PLSQL コードでは、ユーザー名とパスワードの値を動的に置き換えたいと考えています。
EXECUTE IMMEDIATE は USING 句で置換できることを理解していますが、その場合、クエリは静的でなければなりません。
私はこれを行うことができる即時実行に似たフレーバーを探しています:
SIMILAR_EXECUTE_IMMDIATE q'{select ERR_MESSAGE from ERROR_MESSAGES where ERR_CODE = 'CN001'}' INTO l_err_msg USING l_curr_user;
または多分私はそれを2つのステップに分解することができます:
select ERR_MESSAGE into err_msg_var from ERROR_MESSAGES where ERR_CODE='CN001';
EXECUTE_IMMDIATE err_msg_var INTO l_err_msg USING l_curr_user;
基本的に、関連する手順の数を減らすか、パフォーマンスの高いクエリまたはアプローチを取得しようとしています。
前もって感謝します !