Oracle - 截断全局临时表

Ari*_*iod 3 sql oracle

我在迭代中处理大量数据,每个迭代过程大约10-50 000条记录.由于记录数量如此之多,我首先将它们插入到全局临时表中,然后对其进行处理.通常,每次迭代需要5-10秒.

在每次迭代后截断全局临时表是否明智,以便每个迭代都可以从空表开始?大约有5000次迭代.

Jef*_*emp 6

没有!全局临时表的整体思想是,当您不再需要数据时,数据会自动消失.

例如,如果希望在COMMIT时数据消失,则应在最初创建表时使用ON COMMIT DELETE ROWS选项.

这样,您不需要执行TRUNCATE - 您只需执行COMMIT,并且表格全新且空白并准备好重复使用.