现在的位置: 首页 > 综合 > 正文

使用oracle sql*plus 分析sql

2013年02月04日 ⁄ 综合 ⁄ 共 1415字 ⁄ 字号 评论关闭

使用oracle sql*plus 分析sql

一:分析和执行SQL语句

SQL> set autotrace on; 说明:打开自动分析统计,并显示SQL语句的运行结果

SQL> set autotrace traceonly; 说明:打开自动分析统计,不显示SQL语句的运行结果 接下来你就运行测试SQL语句,看到其分析统计结果了。 一般来讲,我们的SQL语句应该避免大表的全表扫描。

SQL> 输入SQL语句注意完成sql语句输入后,要输入分号(;)。 一些辅助项的查看开关

SQL> set autotrace off; 说明:关闭自动分析统计

SQL> SET FEED[BACK] {6|n|ON|OFF} 是否显示当前sql语句查询或修改的行数 默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ,则不管查询到多少行都返回。当为off 时,一律不显示查询的行数

SQL> set time on; 说明:打开时间显示 SQL> set TIMING {ON|OFF} 显示每个sql语句花费的执行时间

二:常用辅助功能

1. 执行一个SQL脚本文件(往往利用其他编辑工具编辑好sql语句,用这种方法执行)

 SQL>start file_name  或者 SQL>@ file_name 如:start c:/sql.txt 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。

2.将在屏幕上的所有内容输出到指定的文件中,包括你输入的sql语句和分析等。(利于用其他工具分析,如utlraEdit等)

SQL>spool c:/analysis.txt

...做了很多操作

SQL>spool off 相当于file.close(),完成所有的内容输出到analysis.txt

3. 对当前的输入进行编辑

SQL>edit

4. 重新运行上一次运行的sql语句 SQL>/

5.设置当前session是否对修改的数据进行自动提交

SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}

6.设置一行可以容纳的字符数

SQL> SET LIN[ESIZE] {80|n}

7.设置一页有多少行数 SQL> SET PAGES[IZE] {24|n}

8.显示一个表的结构 SQL> desc table_name

9.SQL>host 进入cmd,可执行的操作系统下的命令

10.个存储过程 EXECUTE procedure_name

11.指定sql*plus中连接到指定的数据库 CONNECT user_name/passwd@db_alias

12.有问题找帮助,显示sql*plus命令的帮助

HELP 如何安装帮助文件:

Sql>@ ?//sqlplus//admin//help//hlpbld.sql ?//sqlplus//admin//help//helpus.sql

Sql>help index ;显示所有的帮助项目

 

相关词汇:

sql buffer:(保存上次执行的sql*plus语句的缓冲区) 在sql*plus中,可以运行sql*plus命令与sql*plus语句。我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。

抱歉!评论已关闭.