おそらくこれを行うことはできません(少なくとも役に立たない)。
匿名のPL/SQLブロック全体を作成できます
v_plsql := 'DECLARE ' ||
' l_row ' || p_table_name || '%rowtype; ' ||
'BEGIN ' ||
' SELECT * ' ||
' INTO l_row ' ||
' FROM ' || p_table_name ||
' WHERE id = ' || p_some_old_value || ';' ||
...
EXECUTE IMMEDIATE v_plsql;
ただし、一般に、実行時に動的PL / SQLに頼り始めるずっと前に、一歩下がって、問題に対する簡単な解決策がないかどうかを評価する必要があります。たとえば、テーブルごとにCRUDパッケージを動的に生成するフレームワークはいくつもあります。これは動的PL/SQLを使用していますが、データを更新するたびに実行するのではなく、ビルドの一部として1回だけ実行します。