我尝试连接到服务器上托管的这里Oracle数据库是我的脚本为什么这个sqlplus连接字符串在bash中不起作用?
#!/bin/bash
RAW=`cat sqlTemp.sql`
IFS=";"
exit=" exit;"
for var in $RAW
do
query=$(echo $var | sed '/^$/d')
sqlplus64 username/[email protected]:portnumber/servicename $query 2>> errorLog.txt
ERRORCODE=$?
if [ $ERRORCODE != 0 ]
then
echo "$ERRORCODE" >> "errorLog.txt"
echo "this query has error- check the log file for detail"
else
echo "SUCCESS"
fi
done
如果我通过
sqlplus64 -S username/[email protected]:portnumber/servicename <<ENDOFSQL
whenever sqlerror exit sql.sqlcode;
$query
exit;
ENDOFSQL
脚本工作更换连接字符串。
以前的连接字符串有什么问题,以及如何纠正它?
'-S'选项对sqlplus64有什么意义? – choroba
@choroba -S有助于抑制(无声)连接细节。 – realName