ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL/PLUS 常用命令

SQL/PLUS 常用命令

原创 Linux操作系统 作者:chicken0915 时间:2012-07-15 18:03:20 0 删除 编辑

//查看帮助信息
sqlplus -h

//查看sqlplus版本,高版本的客户端可以连接低版本的数据库,反之则可能会出现问题。
sqlplus -v

//静默方式运行sqlplus
sqlplus -s

//操作系统认证
sqlplus /as sysdba

//9i的链接方式是要使用引号
sqlplus "/as sysdba"

//不直接登录数据库模式
sqlplus /nolog

//断开连接
disconn

//查看缓冲区内容,list不是sql和pl sql的命令,是sqlplus的命令。
缓冲区只保留一条语句的命令
list

//执行缓冲区的命令
run :显示执行
/   :隐式执行

//保存缓冲区的命令到指定路径
save /u01/***.sql

//安装sqlplus帮助,使用system用户登录oracle执行以下命令。
@?/sqlplus/admin/help/hlpbld.sql helpus.sql  :有错误提示可以不用理睬

//删除sqlplus帮助,使用system用户登录oracle执行以下命令。
@?/sqlplus/admin/help/helpdrop.sql

//列出所有sqlplus的命令
help index

//查询指定命令的使用方法,如set
help set | ? set

//退出sqlplus,退出同时会显示退出数据库的版本信息
EXIT | QUIT | Ctrl+D on unix | Ctrl+Z on wimdows

//列出一个表或者视图的定义,或者函数的借口等信息
describe table | desc table

显示下列函数结构
desc afunc

//创建一个简单的函数
create or replace function afunc (f1 varchar2, f2 number) return number as
 begin
  if (length(f1) > f2) then
   return 1;
  else
   return 0;
  end if;
 end;
/


//结束当前执行的命令
;| / |
2次回车,保存命令到缓冲区,但是不执行。

//结束PL/sql Blocks
 /  :结束并执行
 .  :结束不执行
 
 //进入PL/SQL模式
 declare|begin
 
 //打印内容到当前屏幕
 set serveroutput on
 
 //SQLPLUS 运行操作系统命令
 hsot |! on unix | $ on windows
 
 //写一个简单的脚本lzk.sql 使用@或者@@ 调用
begin
for i in 1 .. 1000
loop
 insert into t values(i,'lzk');
end loop;
commit;
end;
/
select count(*) from t;
 
//查看和编辑buffer的命令。
SQL> l
  1  begin
  2  for i in 1 .. 1000
  3  loop
  4  insert into t values(i,'lzk');
  5  end loop;
  6  commit;
  7* end;
SQL> l2
  2* for i in 1 .. 1000
SQL> c/1000/2000
  2* for i in 1 .. 2000
SQL> l
  1  begin
  2  for i in 1 .. 2000
  3  loop
  4  insert into t values(i,'lzk');
  5  end loop;
  6  commit;
  7* end;
SQL>
SQL> 0 /* this is a demo sql statmement */
SQL> l
  1  /* this is a demo sql statmement */
  2  begin
  3  for i in 1 .. 2000
  4  loop
  5  insert into t values(i,'lzk');
  6  end loop;
  7  commit;
  8* end;
SQL>
SQL> 1
  1* /* this is a demo sql statmement */
SQL> i haah haah haah haah haah
SQL> l
  1  /* this is a demo sql statmement */
  2  haah haah haah haah haah
  3  begin
  4  for i in 1 .. 2000
  5  loop
  6  insert into t values(i,'lzk');
  7  end loop;
  8  commit;
  9* end;
SQL>
SQL> l
  1  /* this is a demo sql statmement */
  2  haah haah haah haah haah
  3  begin
  4  for i in 1 .. 2000
  5  loop
  6  insert into t values(i,'lzk');
  7  end loop;
  8  commit;
  9* end;
SQL> del 2
SQL> l
  1  /* this is a demo sql statmement */
  2  begin
  3  for i in 1 .. 2000
  4  loop
  5  insert into t values(i,'lzk');
  6  end loop;
  7  commit;
  8* end;
SQL>

//脚本里加注释
REMARK|REM :注释一行        :SQL*PLUS 注释
/* ... */  :注释单行或者多行,C的遗传。 :SQL 注释
--         :注释一行      :SQL 注释

//不可以在注释内使用'&'特殊字符
//不可以在关键字内添加使用注释

//执行脚本时显示内容
set echo on

//启动SQLPLUS时直接启动一个附加的脚本,3种不同方式的范例。
sqlplus sys/sys as sysdba @/u01/lzk/select.sql    
sqlplus sys/sys as sysdba @http://www.lzk.com/lzk/select.sql
sqlplus @select.sql

//脚本嵌套脚本

//spool打印
spool /u01/lzk/spool.txt
......
...
......
spool off

//替代环境变量
select * from t where id=&myid;

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7755871/viewspace-735528/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-07-01

  • 博文量
    41
  • 访问量
    75606