プロシージャを複数回呼び出す必要があります。問題は、各呼び出しの後にプロシージャがテーブルを切り捨てることです。私は各実行のためのテーブルの結果を格納する必要があります。私はドキュメントを調べて、pl/sqlでこれを行う方法を知ることができませんでした。どんなアイデアでも大歓迎です。pl/sqlを使用してテーブルの行を格納する
ありがとう!手続きの各呼び出しの後
プロシージャを複数回呼び出す必要があります。問題は、各呼び出しの後にプロシージャがテーブルを切り捨てることです。私は各実行のためのテーブルの結果を格納する必要があります。私はドキュメントを調べて、pl/sqlでこれを行う方法を知ることができませんでした。どんなアイデアでも大歓迎です。pl/sqlを使用してテーブルの行を格納する
ありがとう!手続きの各呼び出しの後
、同じ列を持つ別のテーブルに結果のデータをコピーします。あなたがプロシージャを呼び出す終わったら
INSERT INTO TABLE_B
SELECT *
FROM TABLE_A;
、すべてのデータはTABLE_B
です。 PL/SQLで
、それは次のようになります。
BEGIN
FOR I IN 1..10 LOOP
PROC(I);
INSERT INTO TABLE_B
SELECT *
FROM TABLE_A;
END LOOP;
PROCESS_ALL_DATA();
END;
更新:
あなたがテーブルを作成する権限を持っていない場合は、あなたがPLで、部分的な結果を格納することができ(メモリ内)/ SQL表:
DECLARE
TYPE T_T_A IS TABLE OF A%TYPE;
L_IMED_TABLE T_T_A;
BEGIN
FOR I IN 1..10 LOOP
PROC(I);
SELECT * BULK COLLECT INTO L_IMED_TABLE
FROM A;
END LOOP;
FOR I IN L_IMED_TABLE.FIRST .. L_IMED_TABLE.LAST LOOP
PROCESS_RESULT_ROW(L_IMED_TABLE(I));
END LOOP;
END;
あなたは、メインテーブルに挿入時にトリガされ、アーカイブに同じデータを移入しますトリガを持つことができますテーブルでは、タイムスタンプやコールカウンターなどの列を追加できます。
もう少し探していることを明確にすることはできますか? – Craig