永发信息网

oracle两个结构相同表和视图数据的插入

答案:2  悬赏:40  手机版
解决时间 2021-03-21 05:33
  • 提问者网友:藍了天白赴美
  • 2021-03-20 23:57
1、一个表AC2001插入到视图AC20VIEW(两个结构一样),AC2001有1.5亿数据
2、因AC2001数据量过大,会导致undo表空间撑爆。
怎么将AC2001的数据注入到AC20VIEW中?
个人想法是写一个存储过程,每插入100W提交一次,请问怎么写
最佳答案
  • 五星知识达人网友:傲气稳了全场
  • 2021-03-21 01:08
DECLARE
  i NUMBER := 1;
BEGIN
  FOR rec IN (SELECt * FROM AC2001 ) LOOP
   INSERT INTO AC20VIEW (col1,col2,...)  VALUES(rec.col1,rec.col2);
    IF MOD(i,100000) = 0 THEN
      COMMIT;
    END if;
    i := i+1;
 END LOOP; 
 --  
 COMMIT;
END;
/
全部回答
  • 1楼网友:廢物販賣機
  • 2021-03-21 01:31
创建物化视图是默认是不可更新的,要创建可以更新的物化视图必须加上for update 关键字。 create materialized view mv_t refresh fast with rowid for update as select * from t;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯