如何在如果条件的ksh shell脚本中写入sql查询
问题描述:
我对shell脚本非常陌生,我想在if'条件'内写入SQL查询,而不是在'block'内部。任何人都可以帮助我吗?如何在如果条件的ksh shell脚本中写入sql查询
我的代码: -
if [sqlplus -s /@user_pass_dbname << EOF select param_value from my_table where my_id=1 EXIT; /EOF == '7878'];then
echo "works!!"
else
echo "doesn't work"
输出: - 第3行 语法错误:`< <'无与伦比
答
获取从sqlplus中值的变量,而不是:
result=`sqlplus -s /@user_pass_dbname <<EOF
set head off feedback off
select param_value from param_table where param_id=1;
exit
EOF`
if [ $result = 965 ]; then
echo "works"
else
echo "doesn't work"
fi
答
我没有现在的环境进行测试,但我认为你需要放引号(')。
'sqlplus -s /@user_pass_dbname << EOF select param_value from my_table
where my_id=1 EXIT; /EOF'
这不是未来的权利,所以我呼应$结果。它说 PARAM_VALUE --------------------------------------------- ----------------------------------- 所以,它是打印表本身,而不仅仅是值。 –
你添加头和反馈关闭? –
我忘了补充一点。它现在工作!非常感谢!!! :) –