不可能用shell脚本捕获sql错误

时间:2018-01-15 11:36:34

标签: sql shell

我有2个shell脚本。一个像这样的数据连接(script1.sh):

#!/usr/bin/ksh
query="$1"
  whenever sqlerror exit 3
  connect $user/$pass@sid
  ${query}
EOF
echo $?
if [ 0 -ne "$?" ]; then
    exit 1
fi

和其他是一个更大的shell脚本,我执行这样的sql命令:

#!/usr/bin/ksh
set -x
$PATH/script1.sh "
--set serveroutput on
--set feedback off
insert into table (column) values ('$1');
commit;
"
if [[ $? != 0 ]]
  then
echo "Error"
exit 3
  else
echo "Ok"
fi
............
..............

问题是这些第二个脚本不会在sql命令中检测到错误,并且始终继续使用所有代码。我放了痕迹,我检查rc总是0。 如果sql失败,你能帮助我检测错误吗?谢谢!

0 个答案:

没有答案