1

将我的临时表数据存储到plsql 表类型的选择语句:

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 回答