当前位置: 代码迷 >> SQL >> sqlplus惯用操作命令
  详细解决方案

sqlplus惯用操作命令

热度:102   发布时间:2016-05-05 14:47:57.0
sqlplus常用操作命令

SQL> set echo on ? ? —————————————————设置运行命令是是否显示语句?

SQL> set feedback on ? ————————————————设置显示“已选择XX行”?

SQL> set colsep | ? ?—————————————————设置列与列之间的分割符号?

SQL> set pagesize 10 ? ————————————————设置每一页的行数?

SQL> SET SERVEROUTPUT ON ? ? ? ? ?——————————-设置允许显示输出类似dbms_output.putline?

SQL> set heading on ? ?————————————————设置显示列名?

SQL> set timing on ? ? ————————————————设置显示“已用时间:XXXX”?

SQL> set time on ? ? —————————————————设置显示当前时间?

SQL> set autotrace on ? ?———————————————设置允许对执行的sql进行分析?

?

sqlplus [email protected] as sysdba

sqlplus /as sysdba?

?

sqlplus /nolog

?

SQL>conn [email protected] as sysdba

?

? ? ?1、执行一个SQL脚本?

?

?

? ? SQL> start D:\a.sql?

? ? SQL> @ D:\a.sql?

? ? 注:若需要在一个脚本中调用另一个脚本,则使用 @@D:\a.sql?

?

? ? 2、重新执行上一次命令:?

?

? ? SQL> / ? ? ? ? ? ? ? --也可使用 run/r 来替代执行?

?

? ? 3、编辑脚本:?

?

? ? SQL> edit ? ? ? ? ? ?--编辑当前输入的文本(前1次执行的部分)?

? ? SQL> edit D:\a.sql ? --编辑制定文档?

? ? 注:在txt中编辑完成后保存,关闭即修改完成,使用“/”后运行?

?

? ? 4、保存脚本:?

?

? ? SQL> save a ? ? ? ? ?--自动存档为a.sql 保存在C:\Documents and Settings\wangxiaoqi?

? ? SQL> save D:\a ? ? ? --保存到D:\a.sql?

?

? ? 5、导入脚本:?

?

? ? SQL> get D:\a?

?

? ? 6、显示一个表结构:?

?

? ? SQL> desc tab ? ? ? ?--如果tab不是表,则只显示其类型和名字?

?

? ? 7、保存所有输入:?

?

? ? SQL> spool D:\xxx ? ?--建立一个xxx.LST文件?

? ? SQL> spool ? ? ? ? ? ? --显示当前spool状态?

? ? SQL> select * from dual;?

? ? SQL> spool off ? ? ? --结束录入?

?

? ? 8、执行过程?

? ? SQL> execute ?a;?

?

? ? 9、增加页眉和页脚:?

?

? ? SQL> TTITLE abc ? ? ?--添加页眉“abc”?

? ? SQL> BTITLE def ? ? ?--添加页脚“def”?

? ? SQL> TTITLE OFF ? ? ?--取消页眉显示?

?

三、COLUMN[COL]命令修改字段属性:?

?

? ? 可以修改的属性有:?

? ? ALI[AS] alias

? ? CLE[AR]?

? ? FOLD_A[FTER]?

? ? FOLD_B[EFORE]?

? ? FOR[MAT] format?

? ? HEA[DING] text?

? ? JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}?

? ? LIKE { expr|alias}?

? ? NEWL[INE]?

? ? NEW_V[ALUE] variable?

? ? NOPRI[NT]|PRI[NT]?

? ? NUL[L] text?

? ? OLD_V[ALUE] variable?

? ? ON|OFF?

? ? WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]?

? ? 注:若不同表的同列名,会一起改掉!?

?

? ? 1、HEADING--改变字段名?

?

? ? SQL> COLUMN id HEADING 'XX|YY' ?--使用'|'可将列名显示为两行?

?

? ? 2、FORMAT--改变字符长度 & 格式化数值?

?

? ? SQL> COLUMN id FORMAT a20 ? ? ? --此字段长20个字符,只能针对字符,若为数字则无法正常显示?

? ? SQL> COLUMN id FORMAT $999.00 ? --前缀$,小数点前3位,小数点后2位四舍五入?

?

? ? 3、JUSTIFY--改变字段名显示位置?

?

? ? SQL> COLUMN id JUSTIFY center ? --居中显示,默认的都是靠右(r )显示?

?

? ? 4、NOPRINT--不显示?

?

? ? SQL> COLUMN id NOPRINT ? ? ? ? ?--不显示出来,可用PRINT设置回来?

?

? ? 5、NULL--设置NULL值显示?

?

? ? SQL> COLUMN COMM NULL 0.00 ? ? ?--将NULL值设置位0.00 ?注意必须加上COMM ?注:不起作用。 ??

?

? ? 6、WRAPPED--设置回绕方式?

?

? ? SQL> COLUMN id FORMAT a5 ? ? ? ?--设置长度为5?

? ? SQL> COLUMN id WRAPPED ? ? ? ? --表示直接按长度回绕?

? ? SQL> COLUMN id WORD_WRAPPED ? --按单词回绕?

? ? SQL> COLUMN id TRUNCATED ? ? ?--直接按长度截断?

?

? ? 7、COLUMN--显示当前列所有属性?

?

? ? SQL> COLUMN id ? ? ? ? ? ? ? ? ?--后面不加列名时显示所有的COLUMN?

?

? ? 8、OFF|ON--设置某一字段关闭?

?

? ? SQL> COLUMN id OFF?

?

? ? 9、CLEAR--清空所有字段属性?

?

? ? SQL> CLEAR COLUMNS?

?

?

?

四、SQL*Plus的系统参数:?

?

? ? show all ? ? ? ? --显示所有系统参数的当前值?

? ? show [参数] ? ? ?--显示某个系统参数值?

? ? set ?[参数][值] ?--设置系统参数值?

?

? ? appinfo is OFF and set to "SQL*Plus"

? ? arraysize 15?

? ? SQL*Plus一次从oracle获取的行数,设置越大可提高效率,但是对内存有要求,1000以上效果不大?

? ? autocommit OFF?

? ? 针对session的自动提交 SQL> SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} ? --有IMM[EDIATE]则无需再ON?

? ? autoprint OFF

? ? autorecovery OFF

? ? autotrace OFF?

? ? 设置可以对执行的SQL进行分析 SQL> SET AUTOTRACE ON?

? ? blockterminator "." (hex 2e)

? ? btitle OFF and is the first few characters of the next SELECT statement

? ? cmdsep OFF

? ? colsep " "?

? ? 设置列与列之间的分割符号 SQL> SET COLSEP '|'?

? ? compatibility version NATIVE?

? ? 数据库版本,NATIVE为默认,可制定V6,V7,V8?

? ? concat "." (hex 2e)

? ? copycommit 0

? ? COPYTYPECHECK is ON

? ? define "&" (hex 26)?

? ? 替换变量时所使用的字符?

? ? describe DEPTH 1 LINENUM OFF INDENT ON

? ? echo OFF?

? ? 是否显示执行代码 SQL> SET ECHO {ON|OFF}?

? ? editfile "afiedt.buf"

? ? embedded OFF

? ? escape OFF

? ? FEEDBACK ON for 6 or more rows?

? ? 查询、修改时所影响的行数 SQL> SET FEED[BACK] {6|n|ON|OFF}?

? ? flagger OFF

? ? flush ON

? ? heading ON?

? ? 是否显示列标题 SQL> SET HEA[DING] {ON|OFF}?

? ? headsep "|" (hex 7c)

? ? instance "local"

? ? linesize 100?

? ? 设置一行可容纳的字符数 SQL> SET LIN[ESIZE] {80|n}?

? ? lno 8

? ? loboffset 1

? ? logsource ""

? ? long 5000

? ? longchunksize 80

? ? markup HTML OFF ...

? ? newpage 1?

? ? 页与页之间的分隔符 SQL> SET NEWP[AGE] {1|n|NONE}?

? ? ? ? ? ? ? 当set newpage 0 时,会在每页的开头有一个小的黑方框。?

? ? ? ? ? ? ? 当set newpage n 时,会在页和页之间隔着n个空行。?

? ? ? ? ? ? ? 当set newpage none 时,会在页和页之间没有任何间隔。?

? ? null ""?

? ? 设置null值 ?SQL> SET NULL 0.00?

? ? ? ? ? ? ? ? ? ? ?但是此值显示出来后必为字符型?

? ? numformat ""

? ? numwidth 10?

? ? 设置number类型的长度限制 SQL> SET NUM[WIDTH] 16?

? ? pagesize 9999?

? ? 一页显示多少行 SQL> SET PAGES[IZE] {24|n}?

? ? ? ? ? ? ? ? ? ? ?当设置为0时,则所有行显示在一页中,并且不显示标题行?

? ? PAUSE is OFF

? ? pno 1

? ? recsep WRAP

? ? recsepchar " " (hex 20)

? ? release 1002000100

? ? repfooter OFF and is NULL

? ? repheader OFF and is NULL

? ? serveroutput ON SIZE 1000000 FORMAT WORD_WRAPPED?

? ? 输出DBMS.OUTPUT时是否显示 SQL> SET SERVEROUT[PUT] {ON|OFF} [size n]?

? ? shiftinout INVISIBLE

? ? showmode OFF

? ? spool OFF

? ? sqlblanklines OFF

? ? sqlcase MIXED

? ? sqlcode 0

? ? sqlcontinue "> "

? ? sqlnumber ON

? ? sqlpluscompatibility 10.2.0

? ? sqlprefix "#" (hex 23)

? ? sqlprompt " [email protected] > "

? ? sqlterminator ";" (hex 3b)

? ? suffix "sql"

? ? tab ON

? ? termout ON?

? ? 是否显示输出内容,例如spool输出 ?SQL> SET TERM[OUT] {ON|OFF}?

? ? timing OFF?

? ? SQL语句执行花费时间显示 ?set TIMING ?{ON|OFF}?

? ? trimout ON?

? ? 标准输出中每行最后的空格是否去掉 SQL> SET TRIMS[OUT] {ON|OFF}?

? ? trimspool ON?

? ? spool标准输出中每行最后的空格是否去掉 SQL> SET TRIMS[OUT] {ON|OFF}?

? ? ttitle OFF and is the first few characters of the next SELECT statement

? ? underline "-" (hex 2d)

? ? USER is "WANGXIAOQI"

? ? verify ON

? ? wrap : lines will be wrapped?

? ? 当长度超过时是否回绕 ?SQL> SET WRA[P] {ON|OFF} ? --基本上都要ON?

?

?

?

五、一些常用的小操作:?

?

? ? show user ? ? ? ? ? ? ? ? ? ? ?--查看当前登录用户?

? ? show errors ? ? ? ? ? ? ? ? ? ?--显示错误信息?

? ? show rel[ease] ? ? ? ? ? ? ? ? --显示版本?

? ? show SGA ? ? ? ? ? ? ? ? ? ? ? --显示SGA?

? ? set time on ? ? ? ? ? ? ? ? ? ?--前端始终显示时间

? ? select name from v$database; ? --查看当前所在数据库

? ? select * from v$instance; ? ? ?--查看所有数据库实例(似乎没什么用)

? ? select * from V_$PWFILE_USERS; --查看那些用户有SYSDBA/SYSOPER权限


  相关解决方案