1

一時テーブルデータをplsql テーブル タイプに格納する select ステートメント:

select * from Global_temporary_table
bulk collect into plsql_table_type;

変換を行った後、以下の挿入ステートメントを使用して Global_temporary_table テーブルにデータを挿入しようとすると

INSERT INTO Global_temporary_table
VALUES v_rbct_tbl(i);
COMMIT;

挿入トランザクションを完了できません。ただし、同じデータを非グローバル一時テーブルに挿入しようとしても、問題は発生しません。

助けてください!

4

1 に答える 1

2

コミットによってデータが削除されることはほぼ確実です。GTT 内のデータは揮発性であり、コミット後 (ON COMMIT DELETE ROWS) またはセッション終了後 (ON COMMIT PRESERVE ROWS) に消失します。

コミット後にデータを保持する必要がある場合は、ON COMMIT PRESERVE ROWS を使用してテーブルを作成します。

ドキュメントを見る

于 2013-07-22T13:50:55.583 に答える