
[英]How to handle a NULL Stored Proc return arg in Oracle XML DB Native Web Services?
[英]Sybase stored proc called from isql on AIX: how to handle return code
我有一个使用isql在Sybase中执行存储过程的AIX批处理作业。 在某些情况下,存储过程将返回错误代码。 我想让isql将返回代码传递给AIX脚本。
我可以在isql中捕获存储的proc的返回码,还是必须编写某种输出文件并让AIX脚本进行检查?
这是isql命令的样子。 它在Korn shell脚本中运行。
isql -D$database -S$server -U$userId -P$password << EOF
EXEC MY_STORED_PROC $AN_INPUT_PARAMETER
go
EOF
如果我没记错的话, $?
设置为命令返回值。 在EOF
行之后添加以下内容:
if [[ $? != 0 ]]; then
print "stored procedure failed"
exit
fi
在ISQL命令中添加--retserverror
,然后使用$?
正如尼古拉所说。
这是您想要实现的目标吗?
isql -D$database -S$server -U$userId -P$password << EOF | grep RETVAL | awk -F"=" '{print $2}' | read value
declare @retval int
EXEC @retval = MY_STORED_PROC $AN_INPUT_PARAMETER
SELECT "RETVAL=" + convert(varchar, @retval)
go
EOF
echo "Procedure returned: $value"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.