- 论坛徽章:
- 0
|
1: 有两张库表------PresentA, HistoryA.
2: 现在想手工把数据表PresentA 中部份数据导入 HistoryA 中.
因为 PresentA, HistoryA, 和需要从 PresentA 导入HistoryA 中的数据量都很大,现在想到了三种操作方式:
A : 时间长一点,写一个程序 先 insert into HistoryA ( select * from PresentA where B) 然后 delete PresentA where B, 最后 commit,重建 PresentA 的索引
****** 但是这样做感觉耗时太长(考虑到有上百万数据, 和应用不能长期停止)*******
B: 把相关数据全部从 PresentA 中export 出来,然后在 import 入HistoryA 中, 然后在删除 PresentA 中想关记录, 重建 PresentA 的索引
******但是没有做过这么大数据量的类似操作,不知道时间参数,对应用的影响如何? ****
C: 考虑到在表PresentA 中需要移出的数据量远远大于需要留下的, 所以还可以: rename PresentA 为 PresentA_1, create PresentA, insert into PresentA ( select * from PresentA_1 where BBB1)。
****** 但是需要解决 PresentA_1 与 HistoryA 的合并问题?
请问: 有没有别的方法解决这上面问题? 如果没有,那A,B,C谁最优
谢谢! |
|