ループ内でテーブルを更新し、一時変数に格納されている値を追加したいと考えています。コードの一部を次に示します。
SELECT SUM(CASE WHEN temp_atr_val = temp_val THEN net_sales_home ELSE 0 END) into temp_variable
FROM schemafinal_1;
EXECUTE IMMEDIATE 'ALTER TABLE SAR ADD ('||temp_name||' number)';
EXECUTE IMMEDIATE ' UPDATE SAR b
SET b.'||temp_name||' = temp_variable';
END LOOP;
END LOOP;
END;
上記のコードを実行すると、ORA-00904: "TEMP_VARIABLE": 無効な識別子と表示され、& を temp_variable の前に置くと、バインド値を求められ、その値が各セルに入力されます。:temp_variable を使用すると、「ORA-01008: すべての変数がバインドされていません」と表示されます
私は pl/sql および oracle sql 開発者は初めてです。助けてください