Default Error Handling In Procedures - Sybase Adaptive Server IQ 12.4.2 Administration And Performance Manual

Table of Contents

Advertisement

Errors and warnings in procedures

Default error handling in procedures

Default error handling
256
This section describes how Adaptive Server IQ handles errors that occur during
a procedure execution, if you have no error handling built in to the procedure.
If you want to have different behavior from that described in this section, you
can use exception handlers, described in "Using exception handlers in
procedures" on page 261. Warnings are handled in a slightly different manner
from errors: for a description, see "Default handling of warnings in
procedures" on page 260
There are two ways of handling errors without using explicit error handling:
Default error handling
to the calling environment.
ON EXCEPTION RESUME
is included in the CREATE PROCEDURE statement, the procedure
carries on executing after an error, resuming at the statement following the
one causing the error.
Generally, if a SQL statement in a procedure fails, the procedure terminates
execution and control is returned to the application program with an
appropriate setting for the SQLSTATE and SQLCODE values. This is true
even if the error occurred in a procedure invoked directly or indirectly from the
first one.
The following demonstration procedures show what happens when an
application calls the procedure
procedure
, which then encounters an error.
InnerProc
CREATE PROCEDURE OuterProc()
BEGIN
MESSAGE 'Hello from OuterProc.';
CALL InnerProc();
MESSAGE 'SQLSTATE set to ',
SQLSTATE,' in OuterProc.'
END
CREATE PROCEDURE InnerProc()
BEGIN
DECLARE column_not_found
EXCEPTION FOR SQLSTATE '52003';
MESSAGE 'Hello from InnerProc.';
SIGNAL column_not_found;
MESSAGE 'SQLSTATE set to ',
SQLSTATE, ' in InnerProc.';
END
The procedure fails and returns an error code
If the ON EXCEPTION RESUME clause
, and
OuterProc
OuterProc
in turn calls the

Advertisement

Table of Contents
loading

Table of Contents