TO  bzszp(SongZip) 
当初设计时没有考虑分区;难道现在只有进行分组更新了么?

解决方案 »

  1.   

    用cursor来做update,然后10000条后提交一次,这样做可行么?
      

  2.   

    TO minkoming(学无止境) 
    如果用过程且用游标来实现的话,我认为,实现的效率应该只会降低了,因为在进行分组UPDATE时候又进行了游标的操作,这样以来,效率就自然降下来了。
      

  3.   

    影响更新操作主要有:
    1、索引
    可以减少不必要索引2、碎片
    可以考虑把数据Exp,然后删除表,IMP3、加大回滚段4、游标会降低效率,避免或减少循环更新,尽量用一条SQL语句实现更新
      

  4.   

    TO zhangshunshi(宇轩)
    对于泥的观点,我认为前2条对解决“想无条件UPDATE一海量表中一字段”的问题是无能为力的;后2条才是影响解决此问题的效率的重要2个考虑因素。其实,我一开始也是这么考虑的:排除利用游标的想法,对于此影响事务的回滚段的设置。另,感谢大家的积极参与!
      

  5.   

    今晚趁主机空闲之际进行了一次操作,UPDATE TABLE_1 SET field = VALUE;
    将该事务置于一500M大小的回滚段之上,结果:8922414 rows updated.
    耗时:60分钟整!