Edit D:\app\Administrator\product\11.2.0\dbhome_1\oc4j\j2ee\oc4j_applications\applications\em\em\online_help\tdddg\tdddg_subprograms050.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <script src="./callback.js" type="text/javascript"></script> <noscript>Your browser does not support JavaScript. This help page requires JavaScript to render correctly.</noscript> </head> <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <meta name="generator" content="Oracle DARB XHTML Converter (Mode = ohj/ohw) - Version 5.1.1 Build 005" /> <meta name="date" content="2009-04-21T9:46:25Z" /> <meta name="robots" content="noarchive" /> <meta name="doctitle" content="About Exceptions and Exception Handlers" /> <meta name="relnum" content="11g Release 2 (11.2)" /> <meta name="partnum" content="E10766-01" /> <link rel="copyright" href="./dcommon/html/cpyr.htm" title="Copyright" type="text/html" /> <link rel="stylesheet" href="./dcommon/css/blafdoc.css" title="Oracle BLAFDoc" type="text/css" /> <link rel="contents" href="toc.htm" title="Contents" type="text/html" /> <link rel="prev" href="tdddg_subprograms049.htm" title="Previous" type="text/html" /> <link rel="next" href="tdddg_subprograms051.htm" title="Next" type="text/html" /> <title>About Exceptions and Exception Handlers</title> </head> <body> <div class="zz-skip-header"><a href="#BEGIN">Skip Headers</a></div> <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> <col width="86%" /> <col width="*" /> <tr valign="bottom"> <td align="left"></td> <td align="center"><a href="tdddg_subprograms049.htm"><img width="24" height="24" src="./dcommon/gifs/leftnav.gif" alt="Previous" /><br /> <span class="icon">Previous</span></a> </td> <td align="center"><a href="tdddg_subprograms051.htm"><img width="24" height="24" src="./dcommon/gifs/rightnav.gif" alt="Next" /><br /> <span class="icon">Next</span></a></td> </tr> </table> <p><a id="BABFIBHE" name="BABFIBHE"></a><a id="TDDDG99947" name="TDDDG99947"></a></p> <div class="sect2"><!-- infolevel="all" infotype="General" --> <h1>About Exceptions and Exception Handlers</h1> <a name="BEGIN" id="BEGIN"></a> <p><a id="sthref524" name="sthref524"></a>When a run-time error occurs in PL/SQL code, an <span class="bold">exception</span> is raised. If the subprogram (or block) in which the exception is raised has an exception-handling part, control transfers to it; otherwise, execution stops.</p> <p>Run-time errors can arise from design faults, coding mistakes, hardware failures, and many other sources. Because you cannot anticipate all possible errors, Oracle recommends including exception-handling parts in your subprograms (<a href="tdddg_subprograms006.htm#BABJGJGJ">"About Subprogram Structure"</a> shows where to put the exception-handling part).</p> <p>Oracle Database has many <a id="sthref525" name="sthref525"></a><span class="bold">predefined exceptions</span>, which it raises automatically when a program violates database rules or exceeds system-dependent limits. For example, if a <code>SELECT</code> <code>INTO</code> statement returns no rows, Oracle Database raises the predefined exception <code>NO_DATA_FOUND</code>. For a summary of predefined PL/SQL exceptions, see <a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS00703','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a>.</p> <p>PL/SQL lets you define (declare) your own exceptions. An exception declaration has this syntax:</p> <pre xml:space="preserve" class="oac_no_warn"> <span class="italic">exception_name</span> EXCEPTION; </pre> <p>Unlike a predefined exception, a <a id="sthref526" name="sthref526"></a><span class="bold">user-defined exception</span> must be raised explicitly, using either the <a id="sthref527" name="sthref527"></a><code>RAISE</code> statement or the <a id="sthref528" name="sthref528"></a><a id="sthref529" name="sthref529"></a><code>DBMS_STANDARD</code>.<code>RAISE_APPLICATION_ERROR</code> procedure. For example:</p> <pre xml:space="preserve" class="oac_no_warn"> IF <span class="italic">condition</span> THEN RAISE <span class="italic">exception_name</span>; </pre> <p>For information about the <code>DBMS_STANDARD</code>.<code>RAISE_APPLICATION_ERROR</code> procedure, see <a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS99960','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a>.</p> <p>The exception-handling part of a subprogram contains one or more exception handlers. An <a id="sthref530" name="sthref530"></a><span class="bold">exception handler</span> has this syntax:</p> <pre xml:space="preserve" class="oac_no_warn"> WHEN { <span class="italic">exception_name</span> [ OR <span class="italic">exception_name</span> ]... | OTHERS } THEN <span class="italic">statement</span>; [ <span class="italic">statement</span>; ]... </pre> <p>A <a id="sthref531" name="sthref531"></a><code>WHEN</code> <code>OTHERS</code> exception handler handles unexpected run-time errors. If used, it must be last. For example:</p> <pre xml:space="preserve" class="oac_no_warn"> EXCEPTION WHEN <span class="italic">exception_1</span> THEN <span class="italic">statement</span>; [ <span class="italic">statement</span>; ]... WHEN <span class="italic">exception_2</span> OR <span class="italic">exception_3</span> THEN <span class="italic">statement</span>; [ <span class="italic">statement</span>; ]... WHEN OTHERS THEN <span class="italic">statement</span>; [ <span class="italic">statement</span>; ]... END; </pre> <p>An alternative to the <code>WHEN</code> <code>OTHERS</code> exception handler is the <a id="sthref532" name="sthref532"></a><code>EXCEPTION_INIT</code> pragma, which associates a user-defined exception name with an Oracle Database error number.</p> <div class="helpinfonotealso"> <h2>Related Topics</h2> <p><a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS01387','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a> for more information about exception declaration syntax</p> <p><a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS01316','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a> for more information about exception handler syntax</p> <p><a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS01315','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a> for more information about the <code>EXCEPTION_INIT</code> pragma</p> <p><a href="tdddg_subprograms049.htm#CIHIHAFG">Handling Exceptions (Run-Time Errors)</a></p> </div> </div> <!-- class="sect2" --> <!-- Start Footer --> <div class="footer"> <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> <col width="86%" /> <col width="*" /> <tr> <td align="left"><span class="copyrightlogo">Copyright © 1996, 2009, Oracle and/or its affiliates. All rights reserved.</span><br /> <a href="./dcommon/html/cpyr.htm"><span class="copyrightlogo">Legal Notices</span></a></td> <td align="center"><a href="tdddg_subprograms049.htm"><img width="24" height="24" src="./dcommon/gifs/leftnav.gif" alt="Previous" /><br /> <span class="icon">Previous</span></a> </td> <td align="center"><a href="tdddg_subprograms051.htm"><img width="24" height="24" src="./dcommon/gifs/rightnav.gif" alt="Next" /><br /> <span class="icon">Next</span></a></td> </tr> </table> </div> <!-- class="footer" --> </body> </html>
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de