请问频繁插入和删除的表,怎么提高其性能? 我有一张表,基本上每分钟都要插入很多数据,根据这些数据计算完之后,又要删除一部分数据。时间长了,现在性能变得非常差,不论查询还是删除,都需要好长时间,并且,之前建的索引都用不上了。我删除数据时,本来是根据主键来删的,但是从执行计划来看,变成全表扫描了。请问怎么解决?我建表时,创建了主键和一个非唯一索引。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 删除时,可以用ROWID,非常快。一次处理数据很多的话,可以做PACKAGE之类 索引优化查询但是减慢插入看你的情况建议去掉索引〉〉我删除数据时,本来是根据主键来删的,但是从执行计划来看,变成全表扫描了。这需要对表重新进行分析analyze table tablename compute statistics; 计算的时候把数据导出到一个计算用的临时数据库要删除的话把需要删除的主键值写到一个表里面去,之后Delete的时候用子查询 首先丛述一下你业务:你要插入的标称作目标表T,表中已经有了一些数据组成集合A,一些新来的数据称作集合A,现在把集合A中的数据插入到目标表T,然后在从目标表T中(1,从新加入的集合A中,2 从集合A和B中)删除一些数据。若是1这种情况,用临时表把处理好的了的数据插入到目标表就可以了。若是2那种情况,没办法,请高人指点了 不要删除一条commit一条,最好全部做完一次性提交,或者做了多条以后再提交,效率相差很大,不知道对你有没有帮助,另外定期分析一下相关的表 linux下有没有TOAD, PL/SQL DEVELOPER之类的软件吗 ORACLE数据库越来越大的问题 如何创建表空间? Oracle 下载问题 SQL*Plus 连服务器时出现ORA-12154:TNS:不能分解服务名称错误,别的机子却可以连上服务器, 设计一个表如何实现字段中带附件?一条记录假如有二个以上的附件只用一个字段能否实现? 数据复制可以复制大字段吗 数据库中的数据怎么变味儿了? pl/sql 远程连接的问题 请教:组内排序和组外排序的sql怎么写 oracle数组存放游标数据问题 存储过程中函数索引无效,何解??
看你的情况建议去掉索引〉〉我删除数据时,本来是根据主键来删的,但是从执行计划来看,变成全表扫描了。这需要对表重新进行分析
analyze table tablename compute statistics;
要删除的话把需要删除的主键值写到一个表里面去,之后Delete的时候用子查询