The Oracle (tm) Users' Co-Operative FAQ
How do I get the return code (or exit code) from SQL*Plus to a UNIX variable ?
| Author's name: David T. Bath Author's Email: David.Bath@edipost.auspost.com.au Also once known as dtb@otto.bf.rmit.edu.au or orafaq@bf.rmit.edu.au |
Date written: 9th Aug 2001 Oracle version(s): 8.1.7 |
| How do I get the return code (or exit code) from SQL*Plus to a UNIX variable ? |
Yes and No.
In sh variants, the exit code is available through $?
While SQL*Plus ATTEMPTs to put the Oracle error number into this value, this usually gets mod-ded by 256 or some such power of two, depending on your Unix dialect. A return of zero therefore means:....
a) It was really zero, and everything OK b) ORA-256, ORA-512, .... or something like that was the problem.
The real solution is to trap the textual output of the error through stderr, slurp and mangle it and then backtick the results into a variable. This may even be better, as you get the facility, which MIGHT be ORA, but might be something else entirely such as NET.
Further reading: N/A
最后修改时间:2020-04-16 15:13:16
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




