- 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 方法 描述 int
getErrorCode()
检索此SQLException
对象的供应商特定异常代码。SQLException
getNextException()
通过setNextException(SQLException ex)获取链接到此SQLException
对象的异常。String
getSQLState()
检索此SQLException
对象的SQLState。Iterator<Throwable>
iterator()
返回链接的SQLExceptions的迭代器。void
setNextException(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()
-
-