Java™ Platform
Standard Ed. 6

java.sql
Class SQLException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.sql.SQLException
All Implemented Interfaces:
Serializable, Iterable<Throwable>
Direct Known Subclasses:
BatchUpdateException, RowSetWarning, SerialException, SQLClientInfoException, SQLNonTransientException, SQLRecoverableException, SQLTransientException, SQLWarning, SyncFactoryException, SyncProviderException

public class SQLException
extends Exception
implements Iterable<Throwable>

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

Each SQLException provides several kinds of information:

See Also:
Serialized Form

Constructor Summary
SQLException()
          Constructs a SQLException object.
SQLException(String reason)
          Constructs a SQLException object with a given reason.
SQLException(String reason, String SQLState)
          Constructs a SQLException object with a given reason and SQLState.
SQLException(String reason, String SQLState, int vendorCode)
          Constructs a SQLException object with a given reason, SQLState and vendorCode.
SQLException(String reason, String sqlState, int vendorCode, Throwable cause)
          Constructs a SQLException object with a given reason, SQLState, vendorCode and cause.
SQLException(String reason, String sqlState, Throwable cause)
          Constructs a SQLException object with a given reason, SQLState and cause.
SQLException(String reason, Throwable cause)
          Constructs a SQLException object with a given reason and cause.
SQLException(Throwable cause)
          Constructs a SQLException object with a given cause.
 
Method Summary
 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.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SQLException

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 - a description of the exception
SQLState - an XOPEN or SQL:2003 code identifying the exception
vendorCode - a database vendor-specific exception code

SQLException

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 - a description of the exception
SQLState - an XOPEN or SQL:2003 code identifying the exception

SQLException

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 - a description of the exception

SQLException

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

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 - 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.
Since:
1.6

SQLException

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 - a description of the exception.
cause - 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.
Since:
1.6

SQLException

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 - a description of the exception.
sqlState - an XOPEN or SQL:2003 code identifying the exception
cause - 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.
Since:
1.6

SQLException

public SQLException(String reason,
                    String sqlState,
                    int vendorCode,
                    Throwable cause)
Constructs a SQLException object with a given reason, SQLState, vendorCode and cause.

Parameters:
reason - a description of the exception
sqlState - an XOPEN or SQL:2003 code identifying the exception
vendorCode - a database vendor-specific exception code
cause - 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.
Since:
1.6
Method Detail

getSQLState

public String getSQLState()
Retrieves the SQLState for this SQLException object.

Returns:
the SQLState value

getErrorCode

public int getErrorCode()
Retrieves the vendor-specific exception code for this SQLException object.

Returns:
the vendor's error code

getNextException

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

Returns:
the next SQLException object in the chain; null if there are none
See Also:
setNextException(java.sql.SQLException)

setNextException

public void setNextException(SQLException ex)
Adds an SQLException object to the end of the chain.

Parameters:
ex - the new exception that will be added to the end of the SQLException chain
See Also:
getNextException()

iterator

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).

Specified by:
iterator in interface Iterable<Throwable>
Returns:
an iterator over the chained SQLExceptions and causes in the proper order
Since:
1.6

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.