Package java.sql

Class SQLException

All Implemented Interfaces:
Serializable, Iterable<Throwable>
Direct Known Subclasses:
BatchUpdateException, SQLClientInfoException, SQLNonTransientException, SQLRecoverableException, SQLTransientException, SQLWarning

public class SQLException
extends Exception
implements Serializable, Iterable<Throwable>
An exception that indicates a failed JDBC operation. It provides the following information about problems encountered with database access:
  • A message string.
  • A SQLState error description string following either SQL 99 or X/OPEN SQLState conventions. DatabaseMetaData.getSQLStateType() exposes the specific convention in use.
  • A database-specific error code.
  • The next exception in the chain.
See Also:
DatabaseMetaData, Serialized Form
  • Constructor Details

    • SQLException

      public SQLException()
      Creates an SQLException object. The reason string is set to null, the SQLState string is set to null and the error code is set to 0.
    • SQLException

      public SQLException​(String theReason)
      Creates an SQLException object. The reason string is set to the given reason string, the SQLState string is set to null and the error code is set to 0.
      Parameters:
      theReason - the string to use as the Reason string
    • SQLException

      public SQLException​(String theReason, String theSQLState)
      Creates an SQLException object. The reason string is set to the given reason string, the SQLState string is set to the given SQLState string and the error code is set to 0.
      Parameters:
      theReason - the string to use as the reason string.
      theSQLState - the string to use as the SQLState string.
    • SQLException

      public SQLException​(String theReason, String theSQLState, int theErrorCode)
      Creates an SQLException object. The reason string is set to the given reason string, the SQLState string is set to the given SQLState string and the error code is set to the given error code value.
      Parameters:
      theReason - the string to use as the reason string.
      theSQLState - the string to use as the SQLState string.
      theErrorCode - the integer value for the error code.
    • SQLException

      public SQLException​(Throwable theCause)
      Creates an SQLException object. The Reason string is set to the null if cause == null or cause.toString() if cause!=null,and the cause Throwable object is set to the given cause Throwable object.
      Parameters:
      theCause - the Throwable object for the underlying reason this SQLException
      Since:
      1.6
    • SQLException

      public SQLException​(String theReason, Throwable theCause)
      Creates an SQLException object. The Reason string is set to the given and the cause Throwable object is set to the given cause Throwable object.
      Parameters:
      theReason - the string to use as the Reason string
      theCause - the Throwable object for the underlying reason this SQLException
      Since:
      1.6
    • SQLException

      public SQLException​(String theReason, String theSQLState, Throwable theCause)
      Creates an SQLException object. The Reason string is set to the given reason string, the SQLState string is set to the given SQLState string and the cause Throwable object is set to the given cause Throwable object.
      Parameters:
      theReason - the string to use as the Reason string
      theSQLState - the string to use as the SQLState string
      theCause - the Throwable object for the underlying reason this SQLException
      Since:
      1.6
    • SQLException

      public SQLException​(String theReason, String theSQLState, int theErrorCode, Throwable theCause)
      Creates an SQLException object. The Reason string is set to the given reason string, the SQLState string is set to the given SQLState string , the Error Code is set to the given error code value, and the cause Throwable object is set to the given cause Throwable object.
      Parameters:
      theReason - the string to use as the Reason string
      theSQLState - the string to use as the SQLState string
      theErrorCode - the integer value for the error code
      theCause - the Throwable object for the underlying reason this SQLException
      Since:
      1.6
  • Method Details

    • getErrorCode

      public int getErrorCode()
      Returns the integer error code for this SQLException.
      Returns:
      The integer error code for this SQLException. The meaning of the code is specific to the vendor of the database.
    • getNextException

      public SQLException getNextException()
      Retrieves the SQLException chained to this SQLException, if any.
      Returns:
      The SQLException chained to this SQLException. null if there is no SQLException chained to this SQLException.
    • getSQLState

      public String getSQLState()
      Retrieves the SQLState description string for this SQLException object.
      Returns:
      The SQLState string for this SQLException object. This is an error description string which follows either the SQL 99 conventions or the X/OPEN SQLstate conventions. The potential values of the SQLState string are described in each of the specifications. Which of the conventions is being used by the SQLState string can be discovered by using the getSQLStateType method of the DatabaseMetaData interface.
    • setNextException

      public void setNextException​(SQLException ex)
      Obsolete. Appends ex to the end of this chain.
    • iterator

      public Iterator<Throwable> iterator()
      Obsolete. Throwable.getCause() should be used instead of this iterator. Returns an iterator over the exceptions added with setNextException(java.sql.SQLException).
      Specified by:
      iterator in interface Iterable<Throwable>
      Returns:
      An Iterator instance.