2
Oracleカーソル(Oracle 10g)を動的に移入する必要があります。 SQL文は、異なる表および列から取得する入力値に基づいて変更されます。私がしたくないのは、sprocが実行されるたびに切り捨ててロードする一時テーブルを維持することです。ここでは、私が現在やっているものですが、別の選択肢がある場合、私は助けいただければ幸いです:ストアドプロシージャストアド・プロシージャ内のOracleカーソルを動的に移入
を
PROCEDURE Get_Type_One_Polygon_Values(in_role VARCHAR2, rc_generic OUT SYS_REFCURSOR) as
BEGIN
execute immediate 'truncate table teamchk.temp_type_one_roles';
execute immediate 'INSERT INTO TEAMCHK.TEMP_TYPE_ONE_ROLES ' ||
'SELECT ' || in_role || '_POLY_ID, ' || in_role || '_POLY_NAME ' ||
'FROM TEAMCHK.' || in_role;
open rc_generic for
select * from teamchk.temp_type_one_roles;
END;
一時テーブル簡単です
CREATE TABLE TEAMCHK.TEMP_TYPE_ONE_ROLES
(
ROLE_ID NUMERIC(38,0),
ROLE_NAME VARCHAR2(75)
);
これはちょうど私が必要とした答えでした。なぜ私はそれを見落としたのか分かりません!ところで、 –
グローバルな一時テーブルは、一般的には切り捨てる必要はありません。 –