码迷,mamicode.com
首页 > 数据库 > 详细

shell调用sqlplus查询oracle

时间:2018-05-07 14:45:48      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:连接数   $1   today   time   file   最简   bsp   nbsp   输入   


[oracle@hb shell_test]$ cat echo_time #!/bin/sh 一.最简单的调用sqlplus sqlplus -S "sys/unimas as sysdba" << ! select to_char(sysdate,yyyy-mm-dd) today from dual; exit; ! [oracle@hb shell_test]$ ./echo_time

运行结果:

TODAY
----------
2011-03-21

-S 是silent mode,不输出类似“SQL>”,连接数据库,关闭数据库之类的信息。

EOF

eof可以是任何字符串 比如"laldf"那么当你输入单独一行laldf时"shell认为输入结束,但是必须表示块开始必须使用<<;
开始和结束要匹配这个符号“<<”后面的内容
举例子:

 

[oracle@hb shell_test]$ sqlplus -s "sys/unimas as sysdba" << abc
> select to_char(sysdate,yyyy-mm-dd) today from dual;
> exit;
> abc

 

运行结果

TODAY
----------
2011-03-21

二.sqlplus的结果传递给shell的方法一

 

[oracle@hb shell_test]$ cat test2.sh 
#!/bin/bash
VALUE=`sqlplus -S "test/unimas" << !
set heading off
set feedback off
set pagesize 0
set verify off
set echo off
select to_char(sysdate,yyyy-mm-dd) today from dual;
exit
!`
echo $VALUE
if [ -n "$VALUE" ]; then
echo "The rows is $VALUE"
exit 0
else
echo "There is no row"
fi

 

三.sqlplus的结果传递给shell的方法二

 

[oracle@hb shell_test]$ cat test1.sh 
#!/bin/bash
sqlplus -S "test/unimas" << !
set heading off
set feedback off
set pagesize 0
set verify off
set echo off
col coun new_value v_coun
select count(*) coun from lesson;
exit v_coun
!
VALUE="$?"
echo "show row:$VALUE"

 

col coun new_value v_coun v_coun为number类型。因为exit 只能返回数值类型。

四.把shell参数传递给sqlplu

 

#!/bin/bash
t_id="$1"
sqlplus -S "test/unimas" << !
set heading off
set feedback off
set pagesize 0
set verify off
set echo off
select teachername from teacher where id=$t_id;
exit
!

 

五.sqlplus的结果存储在文件中

 

#!/bin/sh
sqlplus -S "test/unimas"<<EOF
set heading off
set feedback off
set pagesize 0
set verify off
set echo off
spool spool_file
SELECT * from teacher;
spool off
exit;
EOF

 

shell调用sqlplus查询oracle

标签:连接数   $1   today   time   file   最简   bsp   nbsp   输入   

原文地址:https://www.cnblogs.com/xwb583312435/p/9002334.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!