【发布时间】:2014-09-25 15:56:25
【问题描述】:
我在 Oracle 10g 中有一个将数据从临时表复制到主表的过程。
-- move data to final table
DELETE FROM my_table;
INSERT INTO my_table
SELECT * FROM my_table_s;
COMMIT;
此表有约 3M 条记录。删除语句很慢。我可以使用 TRUNCATE 加快它的速度,但这会造成数据不可用的小时间窗口。
有没有更好的方法来执行这种类型的移动,既可以在任何给定时间保持对可能正在查询的任何人的数据可用性,又不会使使用这些表对象的任何包失效?
【问题讨论】: