- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.sql.SQLException
-
- All Implemented Interfaces:
-
Serializable,Iterable<Throwable>
- 已知直接子类:
-
BatchUpdateException,RowSetWarning,SerialException,SQLClientInfoException,SQLNonTransientException,SQLRecoverableException,SQLTransientException,SQLWarning,SyncFactoryException,SyncProviderException
public class SQLException extends 异常 implements Iterable<Throwable>
提供有关数据库访问错误或其他错误的信息的异常。
每个
SQLException提供了几种信息:- 描述错误的字符串。 这被用作通过方法
getMessage可用的Java异常消息。 - 一个“SQLstate”字符串,它遵循XOPEN SQLstate约定或SQL:2003约定。 SQLState字符串的值在相应的规范中描述。 可以使用
DatabaseMetaData方法getSQLStateType来发现驱动程序是否返回XOPEN类型或SQL:2003类型。 - 一个特定于每个供应商的整数错误代码。 通常这将是底层数据库返回的实际错误代码。
- 连锁到下一个例外。 这可以用于提供其他错误信息。
- 因果关系,如果有的话这个
SQLException。
- 从以下版本开始:
- 1.1
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 SQLException()构造一个SQLException对象。SQLException(String reason)使用给定的reason构造一个SQLException对象。SQLException(String reason, String SQLState)构造一个SQLException对象,给定的reason和SQLState。SQLException(String reason, String SQLState, int vendorCode)构造一个SQLException与给定对象reason,SQLState和vendorCode。SQLException(String reason, String sqlState, int vendorCode, Throwable cause)构造一个SQLException与给定对象reason,SQLState,vendorCode和cause。SQLException(String reason, String sqlState, Throwable cause)构造一个SQLException与给定对象reason,SQLState和cause。SQLException(String reason, Throwable cause)使用给定的reason和cause构造一个SQLException对象。SQLException(Throwable cause)构造一个SQLException对象与给定的cause。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 intgetErrorCode()检索此SQLException对象的供应商特定异常代码。SQLExceptiongetNextException()通过setNextException(SQLException ex)获取链接到此SQLException对象的异常。StringgetSQLState()检索此SQLException对象的SQLState。Iterator<Throwable>iterator()返回链接的SQLExceptions的迭代器。voidsetNextException(SQLException ex)将SQLException对象添加到链的末尾。-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
-
-
-
构造方法详细信息
-
SQLException
public SQLException(String reason, String SQLState, int vendorCode)
构造一个SQLException与给定对象reason,SQLState和vendorCode。cause未初始化,可以随后通过调用Throwable.initCause(java.lang.Throwable)方法进行初始化。- 参数
-
reason- 异常的描述 -
SQLState- 标识异常的XOPEN或SQL:2003代码 -
vendorCode- 数据库供应商特定的异常代码
-
SQLException
public SQLException(String reason, String SQLState)
使用给定的reason和SQLState构造一个SQLException对象。cause未初始化,可以随后通过调用Throwable.initCause(java.lang.Throwable)方法进行初始化。 供应商代码初始化为0。- 参数
-
reason- 异常的描述 -
SQLState- 标识异常的XOPEN或SQL:2003代码
-
SQLException
public SQLException(String reason)
构造一个SQLException对象与给定的reason。SQLState初始化为null,供应商代码初始化为0.cause未初始化,可以随后通过调用Throwable.initCause(java.lang.Throwable)方法初始化。- 参数
-
reason- 异常的描述
-
SQLException
public SQLException()
构造一个SQLException对象。 的reason,SQLState被初始化为null和供应商代码被初始化为0。cause没有初始化,随后可以通过向一个呼叫进行初始化Throwable.initCause(java.lang.Throwable)方法。
-
SQLException
public SQLException(Throwable cause)
构造一个SQLException对象与给定的cause。 该SQLState被初始化为null和供应商代码被初始化为0。reason被初始化为null如果cause==null或cause.toString()如果cause!=null。- 参数
-
cause- 这个SQLException的基本原因(保存以供getCause()方法稍后检索); 可能为空,表示原因不存在或未知。 - 从以下版本开始:
- 1.6
-
SQLException
public SQLException(String reason, Throwable cause)
使用给定的reason和cause构造一个SQLException对象。SQLState初始化为null,供应商代码初始化为0。- 参数
-
reason- 异常的描述。 -
cause-底层原因SQLException(保存用于由稍后检索getCause()方法); 可能为空,表示原因不存在或未知。 - 从以下版本开始:
- 1.6
-
SQLException
public SQLException(String reason, String sqlState, Throwable cause)
构造一个SQLException与给定对象reason,SQLState和cause。 供应商代码初始化为0。- 参数
-
reason- 异常的描述。 -
sqlState- 标识异常的XOPEN或SQL:2003代码 -
cause- 这个SQLException原因(其保存以供getCause()方法稍后检索); 可能为空,表示原因不存在或未知。 - 从以下版本开始:
- 1.6
-
SQLException
public SQLException(String reason, String sqlState, int vendorCode, Throwable cause)
构造一个SQLException与给定对象reason,SQLState,vendorCode和cause。- 参数
-
reason- 异常的描述 -
sqlState- 标识异常的XOPEN或SQL:2003代码 -
vendorCode- 数据库供应商特定的异常代码 -
cause- 这是SQLException(其保存以供getCause()方法稍后检索)的根本原因; 可能为空,表示原因不存在或未知。 - 从以下版本开始:
- 1.6
-
-
方法详细信息
-
getSQLState
public String getSQLState()
检索此SQLException对象的SQLState。- 结果
- SQLState值
-
getErrorCode
public int getErrorCode()
检索此SQLException对象的供应商特定异常代码。- 结果
- 供应商的错误代码
-
getNextException
public SQLException getNextException()
通过setNextException(SQLException ex)检索链接到此SQLException对象的异常。- 结果
-
链中的下一个
SQLException对象;null如果没有 - 另请参见:
-
setNextException(java.sql.SQLException)
-
setNextException
public void setNextException(SQLException ex)
在对象的末尾添加一个SQLException对象。- 参数
-
ex- 将添加到SQLException链结尾的新异常 - 另请参见:
-
getNextException()
-
-