カーソルを宣言してプロシージャ本体で使用すると、その場でテーブルを作成する動的SQLステートメントがあります。その後、宣言したのと同じカーソルにアクセスする必要があります。
動的SQLステートメントを実行する前にカーソルを開こうとすると、正常に動作します。
動的SQLステートメントの実行後にカーソルを開こうとすると、カーソルが開かれません。
私を助けてください。
ありがとうございました。
create or replace procedure(columns varchar2)
is
column_names varchar2(100);
sql_query varchar2(200);
begin
select pk_cols into column_names
from rules where rule_column=columns;
sql_query:='create global temporary table ('||column_names||')';
execute immediate sql_query;
end;