关于索引 1,UPDATA,DELETE,INSERT这三类DML运行时会使用到索引吗?2,书上说在进行大批量事务处理时最好先删除一些索引或暂时disable它们,这是为什么?希望能详细全面一些,有加分谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 因为会每插入一条纪录会更新索引,速度会下降,可以全部插入后再更新索引UPDATE我觉得应该没什么影响 当所DML的表数据量比较大时(比如上百万、上千万的),如果是大批量的的执行update、delete、Insert操作,如果索引太多,在一定程度上会降低速度。但必须确保update或delete时,条件项必须要有索引。当所DML的表数据量比较小时,影响不大。 大批量事务处理时才考虑删除一些索引或暂时disable它们,正常的操作不需要。目的是提供dml的效率,举个例子,要插入1000万的数据到表中,如果没有index的话,数据insert后就完成了,否则还要维护index。update和delete也是一样,如果1000万的表,要更新或者delete 900万,反正都要full scan了,不如删除后再重新创建index来的快。 大批量事务处理时才考虑删除一些索引或暂时disable它们,正常的操作不需要。 目的是提供dml的效率,举个例子,要插入1000万的数据到表中,如果没有index的话,数据insert后就完成了,否则还要维护index。 update和delete也是一样,如果1000万的表,要更新或者delete 900万,反正都要full scan了,不如删除后再重新创建index来的快。 3楼不错 当所DML的表数据量比较大时(比如上百万、上千万的),如果是大批量的的执行update、delete、Insert操作,如果索引太多,在一定程度上会降低速度。 但必须确保update或delete时,条件项必须要有索引。 问一个JOB问题,为什么thisdate比nextdate还晚? 新手问题,关于视图 plsql中执行计划-临时空间 数据转移sqlserver->oracle DELETE FROM CJDEMO_CRUD WHERE ID IN (:ID) ORA-01722: 无效数字 存储过程建立的错误 这种sql怎么写~请高手指点 误删除表和视图后并执行Imp操作的情况,还可以恢复吗。 获取组号问题 各位大侠救救命,oracle启动不了 存储过程的参数可以是TIMESTAMP吗? 关于oracle数据库的问题
UPDATE我觉得应该没什么影响
但必须确保update或delete时,条件项必须要有索引。当所DML的表数据量比较小时,影响不大。
但必须确保update或delete时,条件项必须要有索引。