在Shell脚本中执行oracle查询

时间:2009-11-26 05:52:30

标签: oracle shell

请告诉我如何在shell脚本中执行oralce查询。我正在编写一个shell脚本,我需要在shell脚本中执行oracle查询和脚本。

这些行的目的是什么

sql_file=sachin.sql
cat <<!SQL > $sql_file
        select $1 from dual;
        exit;
!SQL

我认为他们正在创建一个新文件,但究竟是什么!SQL

2 个答案:

答案 0 :(得分:1)

它是多行字符串终止符(here-doc)。使用的字母没有特殊含义,您也可以编写!ORACLE,它只是表示多行字符串的内容是SQL命令。

你的脚本所做的是创建一个名为sachin.sql的文本文件,其中包含两个!SQL标记之间指定的内容。

PS:不确定这是什么外壳,我的bash不喜欢感叹号,认为这是一个事件。

答案 1 :(得分:1)

!SQL只是一个通知结束sql语句的标记(here-doc)我们可以使用EOF,ENDSQL之类的任何标记。

但先决条件是第二个令牌!SQL应该从该行的第一列开始。