- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.sql.SQLException
-
- 实现的所有接口
-
Serializable
,Iterable<Throwable>
- 已知直接子类:
-
BatchUpdateException
,RowSetWarning
,SerialException
,SQLClientInfoException
,SQLNonTransientException
,SQLRecoverableException
,SQLTransientException
,SQLWarning
,SyncFactoryException
,SyncProviderException
public class SQLException extends 异常 implements Iterable<Throwable>
提供有关数据库访问错误或其他错误的信息的异常。
每个
SQLException
提供了几种信息:- 描述错误的字符串。 这用作Java异常消息,可通过方法
getMessage
。 - “SQLstate”字符串,遵循XOPEN SQLstate约定或SQL:2003约定。 SQLState字符串的值在相应的规范中描述。
DatabaseMetaData
方法getSQLStateType
可用于发现驱动程序是返回XOPEN类型还是SQL:2003类型。 - 每个供应商特定的整数错误代码。 通常这将是底层数据库返回的实际错误代码。
- 链接到下一个例外。 这可用于提供其他错误信息。
- 因果关系,如果有的话,这个
SQLException
。
- 从以下版本开始:
- 1.1
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 构造器 描述 SQLException()
构造一个SQLException
对象。SQLException(String reason)
使用给定的reason
构造SQLException
对象。SQLException(String reason, String SQLState)
使用给定的reason
和SQLState
构造一个SQLException
对象。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)
使用给定的cause
构造SQLException
对象。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 int
getErrorCode()
检索此SQLException
对象的特定于供应商的异常代码。SQLException
getNextException()
通过setNextException(SQLException ex)检索链接到此SQLException
对象的异常。String
getSQLState()
检索此SQLException
对象的SQLState。Iterator<Throwable>
iterator()
返回链接的SQLExceptions上的迭代器。void
setNextException(SQLException ex)
将SQLException
对象添加到链的末尾。-
声明方法的类 java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
声明方法的类 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
声明方法的接口 java.lang.Iterable
forEach, spliterator
-
-
-
-
构造方法详细信息
-
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)
使用给定的reason
构造一个SQLException
对象。SQLState
初始化为null
,供应商代码初始化为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)
使用给定的cause
构造一个SQLException
对象。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()
-
-