网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > Oracle > PL/SQL > 如何分析SQL语句  

如何分析SQL语句

2004-04-16  作者:BitsCN整理  来源:中国网管联盟  点评 投稿 收藏


  很多时候,我们不太清楚自己写的SQL语句好还是不好,往往数据量一大,程序运行变慢。其实在SQL/PLUS里可以很清晰的分析出SQL语句的执行计划,它可以提醒我们来创建索引或改变SQL语句的写法。
  
    先在sys用户下运行@/ORACLE_HOME/sqlplus/admin/plustrce.sql
  
  内容:
  set echo on
  drop role plustrace;
  create role plustrace;
  grant select on v_$sesstat to plustrace;
  grant select on v_$statname to plustrace;
  grant select on v_$session to plustrace;
  grant plustrace to dba with admin option;
  set echo off
  
  产生plustrace角色,然后在sys用户下把此角色赋予一般用户&username
  
  SQL> grant plustrace to &username;
  
    然后找到/ORACLE_HOME/rdbms/admin/utlxplan.sql,然后在当前用户SQL>下运行,它创建一个plan_table,用来存储分析SQL语句的结果。
网管联盟bitsCN@com

  
   create table PLAN_TABLE (
   statement_id  varchar2(30),
   timestamp    date,
   remarks     varchar2(80),
   operation    varchar2(30),
   options     varchar2(30),
   object_node   varchar2(128),
   object_owner  varchar2(30),
   object_name   varchar2(30),
   object_instance numeric,
   object_type   varchar2(30),
   optimizer    varchar2(255),
   search_columns number,
   id       numeric,
   parent_id    numeric,
   position    numeric,
   cost      numeric,
   cardinality   numeric,
   bytes      numeric,
   other_tag    varchar2(255),
   partition_start varchar2(255),
   partition_stop varchar2(255),
   partition_id  numeric,
   other      long,
   distribution  varchar2(30));
  
    在SQL/PLUS的窗口运行以下命令 网管u家bitscn.net
  
  
   set time on; (说明:打开时间显示)
   set autotrace on; (说明:打开自动分析统计,并显示SQL语句的运行结果)
   set autotrace traceonly; (说明:打开自动分析统计,不显示SQL语句的运行结果)
  
    接下来你就运行测试SQL语句,看到其分析统计结果了。一般来讲,我们的SQL语句应该避免对大表的全表扫描。
  
    关闭以上功能,在SQL/PLUS的窗口运行以下命令
  
   set time off; (说明:关闭时间显示)
   set autotrace off; (说明:关闭自动分析统计)
TAGs语句   分析   如何   SQL   运行   说明   统计   结果   显示   自动    
 上一篇:在Oracle9i Release 2中使用PL/SQL的集合增强   下一篇:访问多个SQL Server数据库
相关文章列表
如何分析SQL语句 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
1.PL/SQL - 嵌套游标 cursor-PLSQL
2.用一个实例讲解Oracle数据库的PL/SQL语句
3.PL/SQL----触发器-PLSQL
4.mysql存储过程写法—动态参数运用-PLSQL
5.PL/SQL Developer导出分区索引脚本-PLSQL
6.PL/SQL collection— table() 函数-PLSQL
7.SQL Server 2005 中的架构与用户-PLSQL
8.Oracle数据库维护常用SQL语句集合(2)-P
9.Oracle数据库维护常用SQL语句集合(3)-P
10.再议SQL Server临时表和表变量-PLSQL
最新推荐文章:
1.与数据库无关的处理放到数据库以外来实现
2.Oracle 10g第2版新特性之SQL和PL/SQL
3.通过PL/SQL访问Web Services
4.菜鸟学oracle - 用PL/SQL画直方图
5.重新编译PLSQL中无效对象或指定对象
6.Oracle高级技巧
7.深入了解Oracle 10g新的多重集运算符
8.在SQL中删除重复记录(多种方法)
9.Oracle:PL/SQL中怎样使用Array
10.数据库手册:速查Oracle函数列表
网管论坛交流:
·大家来开心一下吧---看了会很开心的东西-
·中国人不可不知道的知识
·@@小鹏◎◎小鹏同志与某位女明星亲密接触
·◎◎小鹏◎◎发现不明生物,居然正在交配
·[图文]^^^版主是什么?????
·泡论坛的女人是好女人
·做个“水性杨花”的女人
·献给mm俱乐部的所有mm
·深圳一集团企业电脑基础应用培训教程
·■■■■十一遊玩照■■■■■