COLUMN
はSQL*Plusクライアント構成であり、動的SQLはPL/SQLエンジン内で実行されているため、実際の接続はありません。適用されないものをどこに文書化するかわかりません。
これについて私が考えることができる最も近いものは、スクリプトで後で SQL ステートメントを計画するために動的 SQL の結果を利用できるようにするためにこれを行っていると仮定して、代わりにバインド変数を使用することです。
var x varchar2(30);
BEGIN
EXECUTE IMMEDIATE 'SELECT ''a'' x FROM dual' INTO :x;
END;
/
select :x from dual;
:x
を使用していた場所ならどこでも使用できます&x2
が、これはバインド変数であるため、使用するときに (varchar の場合) 一重引用符で囲む必要がないことに注意してください。あなたがこれをした場合:
select ':x' from dual;
...次に:x
、 ではなく、リテラル文字列を返しますa
。
編集して追加
特にフォームが必要な場合&
は、さらに手順を実行できます (テストされていませんが、理由がわかりません)。
column x2 new_value x3
select :x as x2 from dual;
...そして、あなたは&x3
利用可能になります。