Added in API level 1

SQLException

public class SQLException
extends Exception implements Iterable<Throwable>

java.lang.Object
   ↳ java.lang.Throwable
     ↳ java.lang.Exception
       ↳ java.sql.SQLException


An exception that provides information on a database access error or other errors.

Each SQLException provides several kinds of information:

  • a string describing the error. This is used as the Java Exception message, available via the method getMesasge.
  • a "SQLstate" string, which follows either the XOPEN SQLstate conventions or the SQL:2003 conventions. The values of the SQLState string are described in the appropriate spec. The DatabaseMetaData method getSQLStateType can be used to discover whether the driver returns the XOPEN type or the SQL:2003 type.
  • an integer error code that is specific to each vendor. Normally this will be the actual error code returned by the underlying database.
  • a chain to a next Exception. This can be used to provide additional error information.
  • the causal relationship, if any for this SQLException.

Summary

Public constructors

SQLException(String reason, String SQLState, int vendorCode)

Constructs a SQLException object with a given reason, SQLState and vendorCode.

SQLException(String reason, String SQLState)

Constructs a SQLException object with a given reason and SQLState.

SQLException(String reason)

Constructs a SQLException object with a given reason.

SQLException()

Constructs a SQLException object.

SQLException(Throwable cause)

Constructs a SQLException object with a given cause.

SQLException(String reason, Throwable cause)

Constructs a SQLException object with a given reason and cause.

SQLException(String reason, String sqlState, Throwable cause)

Constructs a SQLException object with a given reason, SQLState and cause.

SQLException(String reason, String sqlState, int vendorCode, Throwable cause)

Constructs a SQLException object with a given reason, SQLState, vendorCode and cause.

Public methods

int getErrorCode()

Retrieves the vendor-specific exception code for this SQLException object.

SQLException getNextException()

Retrieves the exception chained to this SQLException object by setNextException(SQLException ex).

String getSQLState()

Retrieves the SQLState for this SQLException object.

Iterator<Throwable> iterator()

Returns an iterator over the chained SQLExceptions.

void setNextException(SQLException ex)

Adds an SQLException object to the end of the chain.

Inherited methods

Public constructors

SQLException

Added in API level 1
public SQLException (String reason, 
                String SQLState, 
                int vendorCode)

Constructs a SQLException object with a given reason, SQLState and vendorCode. The cause is not initialized, and may subsequently be initialized by a call to the Throwable#initCause(java.lang.Throwable) method.

Parameters
reason String: a description of the exception

SQLState String: an XOPEN or SQL:2003 code identifying the exception

vendorCode int: a database vendor-specific exception code

SQLException

Added in API level 1
public SQLException (String reason, 
                String SQLState)

Constructs a SQLException object with a given reason and SQLState. The cause is not initialized, and may subsequently be initialized by a call to the Throwable#initCause(java.lang.Throwable) method. The vendor code is initialized to 0.

Parameters
reason String: a description of the exception

SQLState String: an XOPEN or SQL:2003 code identifying the exception

SQLException

Added in API level 1
public SQLException (String reason)

Constructs a SQLException object with a given reason. The SQLState is initialized to null and the vender code is initialized to 0. The cause is not initialized, and may subsequently be initialized by a call to the Throwable#initCause(java.lang.Throwable) method.

Parameters
reason String: a description of the exception

SQLException

Added in API level 1
public SQLException ()

Constructs a SQLException object. The reason, SQLState are initialized to null and the vendor code is initialized to 0. The cause is not initialized, and may subsequently be initialized by a call to the Throwable#initCause(java.lang.Throwable) method.

SQLException

Added in API level 9
public SQLException (Throwable cause)

Constructs a SQLException object with a given cause. The SQLState is initialized to null and the vendor code is initialized to 0. The reason is initialized to null if cause==null or to cause.toString() if cause!=null.

Parameters
cause Throwable: the underlying reason for this SQLException (which is saved for later retrieval by the getCause() method); may be null indicating the cause is non-existent or unknown.

SQLException

Added in API level 9
public SQLException (String reason, 
                Throwable cause)

Constructs a SQLException object with a given reason and cause. The SQLState is initialized to null and the vendor code is initialized to 0.

Parameters
reason String: a description of the exception.

cause Throwable: the underlying reason for this SQLException (which is saved for later retrieval by the getCause() method); may be null indicating the cause is non-existent or unknown.

SQLException

Added in API level 9
public SQLException (String reason, 
                String sqlState, 
                Throwable cause)

Constructs a SQLException object with a given reason, SQLState and cause. The vendor code is initialized to 0.

Parameters
reason String: a description of the exception.

sqlState String: an XOPEN or SQL:2003 code identifying the exception

cause Throwable: the underlying reason for this SQLException (which is saved for later retrieval by the getCause() method); may be null indicating the cause is non-existent or unknown.

SQLException

Added in API level 9
public SQLException (String reason, 
                String sqlState, 
                int vendorCode, 
                Throwable cause)

Constructs a SQLException object with a given reason, SQLState, vendorCode and cause.

Parameters
reason String: a description of the exception

sqlState String: an XOPEN or SQL:2003 code identifying the exception

vendorCode int: a database vendor-specific exception code

cause Throwable: the underlying reason for this SQLException (which is saved for later retrieval by the getCause() method); may be null indicating the cause is non-existent or unknown.

Public methods

getErrorCode

Added in API level 1
public int getErrorCode ()

Retrieves the vendor-specific exception code for this SQLException object.

Returns
int the vendor's error code

getNextException

Added in API level 1
public SQLException getNextException ()

Retrieves the exception chained to this SQLException object by setNextException(SQLException ex).

Returns
SQLException the next SQLException object in the chain; null if there are none

getSQLState

Added in API level 1
public String getSQLState ()

Retrieves the SQLState for this SQLException object.

Returns
String the SQLState value

iterator

Added in API level 9
public Iterator<Throwable> iterator ()

Returns an iterator over the chained SQLExceptions. The iterator will be used to iterate over each SQLException and its underlying cause (if any).

Returns
Iterator<Throwable> an iterator over the chained SQLExceptions and causes in the proper order

setNextException

Added in API level 1
public void setNextException (SQLException ex)

Adds an SQLException object to the end of the chain.

Parameters
ex SQLException: the new exception that will be added to the end of the SQLException chain

See also: