SQLPLUS工具简介

1。 连接 database
  • 远程连接,1)sqlplus /nolog –> conn hanaro@htnsdb –> 输入密码         2)sqlplus hanaro@htnsdb –> 输入密码
  • 本地连接,1)使用本地管理员权限 sqlplus /nolog –> conn /as sysdba 不需要输入密码直接进入。    2)使用 password file 进行确认连接,sqlplus /no log –> conn sys/password as sysdba 。
2。使用前的几个命令
  • 运行 sqlplus 帮助文档 @?/sqlplus/admin/help/hlpbld.sql helpus.sql ( 其中?代表的是oracle的家目录,即 $oracle_home,helpus.sql是参数) .. 要以 system登陆删除刚刚安装的脚本 @?/sqlplus/admin/help/helpdrop.sql查看help信息 help index ( 当没有安装脚本时,输入help没有翻译,安装完后。输入help会看到帮助信息) 。
  • 修改$ORACLE_HOME/sqlplus/admin/glogin.sql配置文件,增加define _editor=vi即可,sqlplus启动的时候会读取glogin.sql脚本。
  • start , 连接数据库时直接执行某个脚本 , 例如下边的 /tmp/asdf , 可以使用 start asdf
  • save , 保存 sql buffer 中的内容到文件, save /tmp/asdf   这里保存的是指令
  • get , 取出刚刚的文件的内容, get /tmp/asdf , 等同于 start /tmp/asdf,@ /tmp/asdf  
  • sqlplus中如果指令太长可以使用 连字符,连接下一行,作为一行输入命令
  • ctrl + c 可以强行中断在屏幕上输出的内容
  • ctrl + d 退出
  • 使用 host 或者 ! 可以从sqlplus中切换出来,切换到操作系统的bash中。再使用 exit 切换回 sqlplus环境 , 在bash中,此时 ps -ef 可观察内存,其中pid为子线程, ppid 为父线程,从内存的情况可以看出从sqlplus中切换出来是创建了新的bash,并非回到原来的bash,此bash的父进程是sqlplus进程,是嵌套关系。 !clear 可以直接执行命令, 并返回到 SQL 中。
  • 输入错误时, 想重新输入 两下回车就可以了。
  • 退出 exit / quit
  • run 于 / 的区别,run是先显示sql buffer中的命令再输出结果,而 / 是直接将结果输出。在 pl/sql中的 / 表示输入完成,跟这个类似。
3。简单环境设置

column Name format a20  设置Name列长度20

column Price format 999.99 --定义价格列的格式,其中前边要多出一位,如果位数少了,负号就被冲掉了

column DayOut heading 'Days|out'-- 如上所示的分行 分出之后的效果 Days

                                                                                                                 out

set linesize 200

set pagesize 50

set newpage 0    新页与上一页之间的空行

set feedback 25 设置反馈信息25行后显示

set numwidth 5 设置所有数字列的宽度

set serveroutput on

spool abc.sql 会将接下来的内容保存到 abc.sql 中,直到 spool off 出现,spool off 也会被保存到 abc.sql 中,注意此处会将所有的内容保存,包括错误信息,错误提示信息,等等。

echo on / off  表示 当我们写完一个脚本以后,如果是 echo on 执行脚本时会将脚本输出, echo off 就只输出脚本结果。不输出脚本内容

set pause on  --设置停顿 ,关看查询结果时,如果页多,一下子就过去了,所以要用More查看,类似 Linux中的 More,进入后要按回车进行,如果想停止使用ctrl+c回车停止

set autocommit off

4。修改常用指令

list , l    , list 1 , l 1 , l m n 查看从 m 到 n 行

clear screen   清屏,类似 clear

change ,c   c /a/c  将第3 行的 a 变成c ,

del              del  删除当前行,del 3删除第3行 , del n * 从第 n 行到当前行, del n last 从第 n 行到最后一行。del m n 从m到n删除

clear buffer  清除 buffer

A[PPEND] text                      -- Adds text to the end of the current line 当增加的前面需要有空格时,命令要有2个空格 a  and name='asdf' 注意 a 后有2个空格当想增加一整行而不是象 append是在当前行增加内容时,以第2行为例子,如果想在第2行之前插入,则输入 2 要增加内容,如果要在第2行之后插入,则首先输入2,然后回车,再输入要增加的内容

I [NPUT] text  增加1行语句

n 输入的数字的行号,变成当前行 ,  例如  2

0 text 在第一行前添加内容

注释 : -- 单行, /* */ 多行

查看相关情况

show linesize pagesize newpage , title btitle off , clear columns breaks computes

替换变量

例如 select * from m where id=12; 此时可以使用替换变量,不用每次都输入sql语句,select * from m where id=&myid ; 此时输入回车时,sqlplus会提示你输入myid的值,输入12时跟上面的内容一样。例如 select * from m where id=12; 此时可以使用替换变量,不用每次都输入sql语句,select * from m where id=&myid ; 此时输入回车时,sqlplus会提示你输入myid的值,输入12时跟上面的内容一样。

posted @ 2012-10-06 12:11  神之一招  阅读(2515)  评论(0编辑  收藏  举报