java.sql

接口
异常
java.lang.Object
  继承者 java.lang.Throwable
      继承者 java.lang.Exception
          继承者 java.sql.SQLException
              继承者 java.sql.SQLWarning
                  继承者 java.sql.DataTruncation
所有已实现的接口:
Serializable, Iterable< Throwable>

public class DataTruncation
     
extends SQLWarning

DataTruncation 异常形式抛出的异常(写入时),或者由于除数据值超出 MaxFieldSize 之外的某种原因意外地截断该数据值时以 DataTruncation 警告形式报告的异常(读取时)。

读取期间 DataTruncation 的 SQLstate 为 01004

写入期间 DataTruncation 的 SQLstate 为 22001

另请参见:
序列化表格

构造方法摘要
DataTruncation(int index, boolean parameter, boolean read, int dataSize, int transferSize)
          创建一个 DataTruncation 对象,当 read 被设置为 true 时,该对象的 SQLState 初始化为 01004,当 read 被设置为 false 时,则初始化为 22001,reason 被设置为 "Data truncation",供应商代码被设置为 0,其他字段被设置为给定值。
DataTruncation(int index, boolean parameter, boolean read, int dataSize, int transferSize, Throwable cause)
          创建一个 DataTruncation 对象,当 read 被设置为 true 时,该对象的 SQLState 初始化为 01004,当 read 被设置为 false 时,则初始化为 22001,reason 被设置为 "Data truncation",供应商代码被设置为 0,其他字段被设置为给定值。
 
方法摘要
 int getDataSize()
          获得应该传输的数据字节数。
 int getIndex()
          获取被截断的列或参数的索引。
 boolean getParameter()
          指示被截断的值是一个参数值还是一个列值。
 boolean getRead()
          指示该值是否在读取时被截断。
 int getTransferSize()
          获得实际传输的数据字节数。
 
从类 java.sql.SQLWarning 继承的方法
getNextWarning, setNextWarning
 
从类 java.sql.SQLException 继承的方法
getErrorCode, getNextException, getSQLState, iterator, setNextException
 
从类 java.lang.Throwable 继承的方法
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

DataTruncation

public DataTruncation(int index,
                      boolean parameter,
                      boolean read,
                      int dataSize,
                      int transferSize)
创建一个 DataTruncation 对象,当 read 被设置为 true 时,该对象的 SQLState 初始化为 01004,当 read 被设置为 false 时,则初始化为 22001,reason 被设置为 "Data truncation",供应商代码被设置为 0,其他字段被设置为给定值。 cause 尚未进行初始化,随后可通过调用 Throwable.initCause(java.lang.Throwable) 方法初始化。

参数:
index - 参数或列值的索引
parameter - 如果参数值被截断,则该参数为 true
read - 如果某一 read 字段被截断,则该参数为 true
dataSize - 数据的原始大小
transferSize - 截断后的大小

DataTruncation

public DataTruncation(int index,
                      boolean parameter,
                      boolean read,
                      int dataSize,
                      int transferSize,
                      Throwable cause)
创建一个 DataTruncation 对象,当 read 被设置为 true 时,该对象的 SQLState 初始化为 01004,当 read 被设置为 false 时,则初始化为 22001,reason 被设置为 "Data truncation",供应商代码被设置为 0,其他字段被设置为给定值。

参数:
index - 参数或列值的索引
parameter - 如果参数值被截断,则该参数为 true
read - 如果某一 read 字段被截断,则该参数为 true
dataSize - 数据的原始大小
transferSize - 截断后的大小
cause - 此 DataTruncation 的底层原因(保存此原因,以便以后通过 getCause() 方法获取);可以为 null,表示该原因不存在或未知。
从以下版本开始:
1.6
方法详细信息

getIndex

public int getIndex()
获取被截断的列或参数的索引。

如果列或参数索引是未知的,返回值可能为 -1,在这种情况下,应该忽略 parameterread 字段。

返回:
截断的参数或列值的索引

getParameter

public boolean getParameter()
指示被截断的值是一个参数值还是一个列值。

返回:
如果被截断的值是一个参数,则返回 true;如果被截断的值是一个列值,则返回 false

getRead

public boolean getRead()
指示该值是否在读取时被截断。

返回:
如果该值在从数据库中读取时被截断,则返回 true;如果该值在写入时被截断,则返回 false

getDataSize

public int getDataSize()
获得应该传输的数据字节数。如果执行了数据转换,则该数可能是一个近似数。如果大小是未知的,则该值可能为 -1

返回:
应该传输的数据字节数

getTransferSize

public int getTransferSize()
获得实际传输的数据字节数。如果大小是未知的,则该值可能为 -1

返回:
实际传输的数据字节数