首页 > 代码库 > 关于oracle的sqlplus的另一些小技巧
关于oracle的sqlplus的另一些小技巧
执行脚本的命令在上一节已经讲过,不再重复。
sqlplus user/password@ip:port/servicename @/path/sqltest.sql;
sqltest的内容及注释:
--这个WHENEVER表示出现错误之后,不再继续执行,还会尽量回滚WHENEVER SQLERROR EXIT SQL.SQLCODE ROLLBACK--select ‘OK‘ from duabbl;--select ‘OK‘ from duiaaal;--输出执行的语句set echo on;--将执行结果输出到文件spool /tmp/spool.txt;select ‘OK‘ from dual;--建立一个空的无害的存储过程create or replace procedure ADisabledSP(timeStamp number, tableName varchar2) is begin if timeStamp<0 then --该条件永远无法成立,且使用了输入参数timeStamp dbms_output.put_line(‘We are going to operate on table ‘ || tableName); --使用了输入参数tableName end if; end;--这个/在命令行中执行是必须的,表示执行,不然,只有换行/ select ‘OK‘ from dual;select ‘OK‘ from dzual;--dual数据库常用于测试目的select ‘OK‘ from dual;spool off;--这个也必须,不然,脚本执行完成之后,会hang在sqlplus命令行中,不退出exit;
查看存储过程的几个SQL,注意有的显示一行一行的,有的显示名字,有的显示内容:
select name from user_source where type=‘PROCEDURE‘;select text from all_source where name = ‘pro_name‘;select * from user_procedures;
最后一个小技巧,为什么在的脚本里,会出现一个/右斜杠呢?????
一般在end;(注意有分号)后加反斜杠/,代表是要执行某个存储过程,如果没有反斜杠,则代表是普通换行。这种情况一般用于oracle中的命令窗口。
https://zhidao.baidu.com/question/560015241204373364.html
关于oracle的sqlplus的另一些小技巧
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。