ハロの外部記憶インターフェイス

そろそろ覚える努力が必要かも…

place holderとbind variable

place holderとbind variable

place holderとbind variableは動的SQLを実行するときに使われるものである。

place holderは文字列の中でコロン(:)で認識される定義の器である。
bind variableはplace holderに当てはまれる値のことを表す。

place holderとbind variableはExecute Immediate文で使用される。


vSQL := '';
vSQL := vSQL || 'INSERT INTO USER_MASTER (USER_ID , USER_NAME)';
vSQL := vSQL || ' VALUES ( :1, :"2" )';
DBMS_OUTPUT.PUT_LINE('SQL=' || vSQL);

例の:1, :"2"がplace holderにあたる。
place holderは名前としては意味が無く、順番としてしか意味を持たない

bind variableの例では下記の形になる

EXECUTE IMMEDIATE vSQL USING IN vID, vName;

bind variableをUsing in句を使って当てはめることができる。