如何从Oracle SQL语句读取数据并将其传递给其他shell脚本?
问题描述:
任何人都可以帮我解决这个问题吗?我有一个shell脚本,我想从一个oracle数据库中选择数据并将其存入一个变量,并从这个变量中运行一个或多个脚本。如何从Oracle SQL语句读取数据并将其传递给其他shell脚本?
因此可以说,如果查询中的一个值是script2。然后我希望它使用select语句中的其他值并将其传递到script2.sh Shell脚本中。我们可以做这样的事吗?
答
保持你的SQL语句在文件中这样说:
set heading off
set pagesize 0
set feedback off
set echo off
spool output.txt
<your query>
spool off
运行上述文件中的脚本是这样的:
sqlplus -s username/password < abovefilename.sql
然后脚本可以从output.txt
读取。
答
您也可以绕过假脱机像这样(在bash):
max_salary=`sqlplus -s username/[email protected] <<END_SQL
SET HEADING OFF
SET FEEDBACK OFF
SET NEWPAGE NONE
SET VERIFY OFF
SET TRIMSPOOL ON
SELECT MAX(salary) FROM emp;
END_SQL
`
echo $max_salary
请加样品输入,该输入您的问题样品所需输出。 – Cyrus
所以让我们说。我有一个从Oracle数据库输出数据的shell脚本。 –