用Execute执行UPdate后紧接着就Execute(“Commit”)
还是要等execute update执行完成后才执行下一个语句的
所以要解决你的问题,只有减少一次update的数据量
或者加大oracle参数

解决方案 »

  1.   

    TO:wupangzi(无本之木)
    不知道“后台过程”是个什么概念,就是说实现的思路是怎么样的?谢谢!TO:luxuezhu(卢冲)
    我的那个更新要执行的操作其实和合并表里的重复数据项差不多,
    所以我不知道这种情况可不可以分几次更新?谢谢!
      

  2.   

    给个思路
    可以分批进行更新呀,比如1000万的倍数时,就commit
      

  3.   

    应该时可以分几次的
    因为UPDATE 是一条条数据
    你通过你的语法控制即可
      

  4.   

    比如我的原始表是:
    PID    COUNT
    01     2
    02     4
    03     1
    02     5
    01     2
    处理完后要变成:
    PID    COUNT
    01     4
    02     9
    03     1我现在还是有2个问题:
    1、因为每处理一次都会涉及到整张表的记录,所以我不知道按什么规则去分段比较合适?
    2、像Golden那种软件它在处理大量数据时是怎么做的?因为看服务器端的记录根本看不出什么不一样的地方
      

  5.   

    insert into b as (select pid,sum(count) OVER(order by ) from a where rownum<10000);
    commit;
    insert into b as 
    ((select pid,sum(count) OVER(order by ) from a where rownum<20000)
    minus
    (select pid,sum(count) OVER(order by ) from a where rownum<10000));
    commit;
    insert into c as (select pid,sum(count) OVER(order by ) from b);不知道这个思路怎么样