「名前」と「値」のフラグを含むテーブル「フラグ」があります。「名前」はフラグの名前で、「値」は「T」または「F」のいずれかです
次の方法で、「enable_feature」という名前のフラグに基づいてテーブルを更新したいと思います。
BEGIN;
IF ((SELECT flags.value FROM flags WHERE flags.name = 'enable_feature') = 'T')
UPDATE... SET...;
ELSE
UPDATE... SET...;
END IF;
END;
問題は IF 文にあるようです。具体的には、次のエラーが発生します。
PLS-00103: 次のいずれかを想定しているときに、記号"SELECT"が見つかりました:
( - + case mod new not null 継続 平均カウント 現在の存在 max min 以前の sql stddev 合計 分散 execute forall マージ時間 タイムスタンプ 間隔 日付パイプ
「enable_feature」の値に基づいて UPDATE/SET ステートメントを実行できるように、このステートメントを変更するにはどうすればよいですか (UPDATE/SET ステートメントは別のテーブルにあります)。