我对数据库中的数据进行update更新,语句如下:UPDATE SYS.SATCAT1 set HA=:n13,CA=:n14,AP=:n15,PE=:n16,DECAY=to_date(:num20,'MM/DD/YYYY') where (BHAO=:n11),其中,HA,CA,AP,PE,DACAY,BHAO为部分属性的名称,还有一部分属性值不用更新,n13,n14,n15,n16,n20,n11为对应的数值。为什么在执行此语句更新的时候速度显的有点慢,不如插入数据时那么快?请问有什么改进方法吗?

解决方案 »

  1.   

    创建索引试一下CREATE INDEX IDX_SATCAT1 ON SATCAT1(BHAO);
      

  2.   

    你尝试对BHAO建立索引再试试.另:你这个表是不是没有主键?加上再试试.
      

  3.   

    推荐方法:
    对这个字段BHAO创建索引试试看,然后将update的字段HA,CA,AP,PE,DACAY,BHAO的索引删除下,做下测试看看效果如何?
      

  4.   

    为什么在执行此语句更新的时候速度显的有点慢,不如插入数据时那么快?请问有什么改进方法吗?
    iihero>>:
        更新操作,效率上与删除再插入同等(因为有了事务处理),所以,大都不如插入数据时快。
    改进方法:
        加速物理定位,通过在查询条件对应的字段上创建索引 (字段BHAO)