易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle SQL优化技巧

我觉得主要应该从5个方面进行调整:
1.去掉不必要的大型表的全表扫描
2.缓存小型表的全表扫描
3.检验优化索引的使用
4.检验优化的连接技术
5.尽可能减少执行计划的Cost
现在简单的举几个例子
Where子句中有“!=”将不使用索引
select account_name from test where amount != 0  (不使用)
select account_name from test where amount > 0  (使用)
Where条件中对字段增加处理函数将不使用该列的索引
select * from emp where to_char(hire_date,'yyyymmdd')='20080411' (不使用)
select * from emp where hire_date = to_char('20080411','yyyymmdd') (使用)
避免在索引列上使用IS NULL
select * from emp where dept_code is null  (不使用)
select * from emp where dept_code > 0  (使用)
IS NULL不會用到索引
而IS NOT NULL用到索引全掃描
通配符% 的使用
select * from emp where name like '%A'  (不使用索引)
select * from emp where name like 'A%'  (使用索引)
可以通过建立反向索引
让select * from emp where name like '%A'
也使用索引
在含有子查询的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的時候尽量少用连接符“+”连接字符串!


相关文档:

oracle压力测试之orabm

数据库压力测试
一、用orabm测试数据库CPU
Orabm通过在用户指定的并发下运行指定数量的事务来测试系统性能.它主要测试数据库服务器的CPU性能和内存。
orabm实际上是一堆sql的集合。
orabm可以用在linux/windows/solaris下使用。
orabm不一定需要运行在数据库所在服务器上,它可以运行在任何安装了9i客户端的终端上。你 ......

Oracle数据库的普通迁移方法

在相同操作系统环境下,相同版本Oracle数据库的迁移比较简单。
 
大致步骤:
1、确定源机的操作系统类型和版本,源机主机名;Oracle版本,安装目录,SID。
本例中,源机为:  Win2k Adv, ywxt,Oracle v8.17,  d:\oracle, orcl
目标机为:Win2003,ywxt,Oracle v8.17,  d:\oracle, orcl
  ......

Oracle 移动数据库文件


Oracle
移动数据库文件

Oracle数据库由数据文件,控制文件和联机日志文件
三种文件组成。
由于磁盘空间的变化,或者基于数据库磁盘I/O性能的调整等,我們可能会考虑移动数据库文件。(注:
恢复数据库时非常
有用,属于冷备份)
查询当前数据库中,相关文件路径

select * from v$datafile;
se ......

oracle中分页的实现方式.rownum的使用

对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。
 举例说明:
例如表:student(学生)表,表结构为:
ID       char(6)      --学号
name   ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号