IRISLIB database
SQL Class Reference

An SQL exception is instantiated using SQLCODE and msg. More...

Inheritance diagram for SQL:
Collaboration diagram for SQL:

Public Member Functions

_.Library.String SQLMessageString (_.Library.Integer pLevel)
 This returns a string that represents the SQL msg string. More...
 
- Public Member Functions inherited from AbstractException
_.Library.Integer AsSQLCODE ()
 Return the SQLCODE value corresponding to the exception.
 
_.Library.String AsSQLMessage ()
 Return the SQL msg string describing details of the exception.
 
_.Library.Status AsStatus ()
 Convert this exception to a Status compatible value.
 
_.Library.String DisplayString (_.Library.Integer pLevel)
 This returns a string that represents the exception. More...
 
_.Library.Status Log ()
 Call the log function (LOG^ETN) to log this exception. More...
 
 OutputToDevice (_.Library.Integer pLevel)
 This outputs the string representation of the exception to the current device, recursively. More...
 
 OutputToStream (_.Library.CharacterStream pStream, _.Library.Integer pLevel)
 This outputs the string representation of the exception to the supplied stream, recursively. More...
 
_.Library.Status StackAsArray (array)
 This method sets an array that is passed by reference to the execution stack at the time of the exception. More...
 

Static Public Member Functions

_.Exception.SQL CreateFromSQLCODE (_.Library.Integer pSQLCODE, _.Library.String pMessage)
 Instantiate an exception from SQLCODE and msg.
 

Private Member Functions

_.Library.Integer __OnAsSQLCODE ()
 Override this method to provide a custom conversion of an exception to an SQLCODE value.
 
_.Library.Status __OnAsStatus ()
 Override this method to provide a custom conversion of an exception to a status. More...
 

Additional Inherited Members

- Public Attributes inherited from CPPException
 Code
 Code is the error code. More...
 
 Data
 Data is extra information supplied for certain errors. More...
 
 InnerException
 This holds an Inner exception. More...
 
 Location
 Location is the location at which the error occurred. More...
 
 Name
 Name is the name of the error. More...
 

Detailed Description

An SQL exception is instantiated using SQLCODE and msg.

It provides a convenient mechanism for reporting SQLCODE errors using exceptions. The resulting exception can be processed as a Status value using the AsStatus() method or the original SQLCODE value along with the msg value can be retrieved as Code and Data respectively. Authors of catch tException { } can test for an SQL exception using tException.IsA("%Exception.SQL") to perform error handling and reporting specific to SQL.

Member Function Documentation

◆ __OnAsStatus()

_.Library.Status __OnAsStatus ( )
private

Override this method to provide a custom conversion of an exception to a status.

SQL exceptions are converted to Status values using $$$SQLCode as the status message id.

Reimplemented from AbstractException.

◆ SQLMessageString()

_.Library.String SQLMessageString ( _.Library.Integer  pLevel)

This returns a string that represents the SQL msg string.

Users should feel free

to modify the format and content in subclasses

Reimplemented from AbstractException.

Reimplemented in Exception.