欢迎投稿

今日深度:

oracle优化思考-双刃剑,oracle优化双刃剑

oracle优化思考-双刃剑,oracle优化双刃剑


oracle优化是一个双刃剑,特别注意这把剑用的场合:系统规划OLTP or OLAP

优化1:索引

在DML操作时,必须维护索引,如果大量的DML操作,想想看,IO是不是老高了?

索引优点:在很多时候能提高查询速度,减低IO负载

优化2:

主键使用序列,而序列的cache大小设置

如果cache设置的小,有可能造成DML锁

如果cache设置的大,DB异常关机后,已经发出的但是未提交的cache数会被丢弃,这样就造成主键的不连续

 

----未完(持续更新)


oracle语句优化

楼上的错了,楼主的已经很优化了, guyuchi的回答开销比楼主的SQL要大。

最关键的在 IN 和 OR 这些关键字的使用上,尽量用IN

这里能优化的地方,在DNAME字段上建索引能改善一些性能,数据量小的时候没效果。

这个大数据量跟小数据量还是有区别的。
 

oracle怎优化

.去掉不必要的大型表的全表扫描
2.缓存小型表的全表扫描
3.检验优化索引的使用
4.检验优化的连接技术
5.尽可能减少执行计划的Cost
在含有子查询的SQL语句中,要特别注意减少对表的查询.例子:
SELECT EMP_NO FROM EMP WHERE (GROUP,NAME) = ( SELECT
COLUMN1,COLUMN2 FROM TEST WHERE TEST_ID = 604)

最高效的删除重复记录方法 ( 因为使用了ROWID)例子:
DELETE FROM EMP E WHERE E.ROWID > (SELECT MIN(X.ROWID)
FROM EMP X WHERE X.EMP_NO = E.EMP_NO);

sql语句用大写的;因为oracle总是先解析sql语句,把小写的字母转换成大写的再执行

在java代码中用到preparedStatement的时候尽量少用连接符“+”连接字符串!
 

www.htsjk.Com true http://www.htsjk.com/shujukunews/2114.html NewsArticle oracle优化思考-双刃剑,oracle优化双刃剑 oracle优化是一个双刃剑,特别注意这把剑用的场合: 系统规划OLTP or OLAP 优化1:索引 在DML操作时,必须维护索引,如果大量的DML操作,想想看,...
评论暂时关闭