oracle 执行sql效率,用Oracle的tkprof分析SQL执行效率

用Oracle的tkprof分析SQL执行效率

用Oracle的tkprof分析SQL执行效率

1、打开跟踪

SQL> alter session set sql_trace=true;

2、执行SQL

SQL> select count(*) from xxxx;

3、关闭跟踪

SQL> alter session set sql_trace=false

4、找到trc文件

目标文件目录在:

SQL> select value from v$parameter where

name='user_dump_dest';

5、变换trc文件为可读格式

tkprof ora10g_ora_26292.trc tkprof0702 explain=username/password

sort=exeela

sort有exeela:执行时间;prsela:语法分析时间;fchela:提取时间

相关文档:

oracle表空间操作详解

1

2

3作者:   来源:    更新日期:2006-01-04

5

6

7建立表空间

8

9CREATE TABLESPACE data01

10DATAFILE '/ora ......

Oracle 10g statistic数据统计,Oracle会根据这些统计信息来决定是走RBO(Rule-BasedOptimization),还是走CBO(Cost-BasedOptimization),会去选择哪种执行计划更划算,影响是否走相关的索引等.如果是CBO的话,它依靠准确的(或者说比较准确的)统计信息来产生优化的执行路径,如果没有做过统计,CBO也就没有做cost评估的依据 ......

限制索引是一些没有经验的开发人员经常犯的错误之一。在SQL中有很多陷阱会使一些索引无法使用。下面讨论一些常见的问题:

1 使用不等于操作符(<>、!=)

下面的查询即使在cust_rating列有一个索引,查询语句仍然执行一次全表扫描。

&nbsp ......

select * from (select t.*,rownum rn from (select * from emp) t where rownum<=10) where rn>=6;

创建分页结果集的游标

create or replace package fenyepackage as

type testcursor is ref cursor;

end fenyepackage;

创建分页存储过程

create or replace procedure fenye3(

tableName varchar2, --表名 ......

Oracle 触发器有语句级触发器和行级触发器

语句级触发器  当删除部门表中的部门号时,同时删除掉员工表中部门号为:old.deptno的记录

create or replace trigger del_dept_id

after delete on dept

for each row

begin

delete from emp where deptno=:old.deptno;

end;

当往部门表插入时,同时在员工表� ......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值