JavaTM Platform
Standard Ed. 6

java.sql
接口 SQLInput

所有已知实现类:
SQLInputImpl

public interface SQLInput

一个输入流,它包含表示 SQL 结构化类型或 SQL 不同类型的实例的值组成的流。此接口(仅用于自定义映射关系)供应用程序在后台使用,程序员永远不能直接调用 SQLInput 方法。reader 方法(readLongreadBytes 等)为 SQLData 接口的实现提供了读取 SQLInput 对象值的一种方式。根据 SQLData 中的描述,必须按照其相应属性在类型的 SQL 定义中出现的顺序调用 reader 方法。方法 wasNull 用于确定读取的最后一个值是否是 SQL NULL

当用实现接口 SQLData 的类的对象调用方法 getObject 时,JDBC 驱动程序调用方法 SQLData.getSQLType 来确定要自定义映射的用户定义类型 (UDT) 的 SQL 类型。驱动程序创建一个 SQLInput 实例,并用 UDT 的属性填充它。然后,驱动程序将输入流传递给方法 SQLData.readSQL,而该方法在其从输入流读取属性的实现中依次调用 SQLInput reader 方法。

从以下版本开始:
1.2

方法摘要
 Array readArray()
          从流中读取 SQL ARRAY 值并将其作为 Java 编程语言中的 Array 对象返回。
 InputStream readAsciiStream()
          读取流中的下一个属性并将其作为 ASCII 字符流返回。
 BigDecimal readBigDecimal()
          读取流中的下一个属性并将其作为 Java 编程语言中的 java.math.BigDecimal 对象返回。
 InputStream readBinaryStream()
          读取流中的下一个属性并将其作为未解释的字节流返回。
 Blob readBlob()
          从流中读取 SQL BLOB 值并将其作为 Java 编程语言中的 Blob 对象返回。
 boolean readBoolean()
          读取流中的下一个属性并将其作为 Java 编程语言中的 boolean 返回。
 byte readByte()
          读取流中的下一个属性并将其作为 Java 编程语言中的 byte 返回。
 byte[] readBytes()
          读取流中的下一个属性并将其作为 Java 编程语言中的字节数组返回。
 Reader readCharacterStream()
          读取流中的下一个属性并将其作为 Unicode 字符流返回。
 Clob readClob()
          从流中读取 SQL CLOB 值并将其作为 Java 编程语言中的 Clob 对象返回。
 Date readDate()
          读取流中的下一个属性并将其作为 java.sql.Date 对象返回。
 double readDouble()
          读取流中的下一个属性并将其作为 Java 编程语言中的 double 返回。
 float readFloat()
          读取流中的下一个属性并将其作为 Java 编程语言中的 float 返回。
 int readInt()
          读取流中的下一个属性并将其作为 Java 编程语言中的 int 返回。
 long readLong()
          读取流中的下一个属性并将其作为 Java 编程语言中的 long 返回。
 NClob readNClob()
          从流中读取一个 SQL NCLOB 值,并以 Java 编程语言中 NCLOB 对象的形式返回。
 String readNString()
          读取流中的下一个属性,并以 Java 编程语言中 String 的形式返回。
 Object readObject()
          读取流头中的下一个属性并将其作为 Java 编程语言中的 Object 返回。
 Ref readRef()
          从流读取 SQL REF 值并将其作为 Java 编程语言中的 Ref 对象返回。
 RowId readRowId()
          从流中读取一个 SQL ROWID 值,并以 Java 编程语言中 RowId 对象的形式返回。
 short readShort()
          读取流中的下一个属性并将其作为 Java 编程语言中的 short 返回。
 SQLXML readSQLXML()
          从流中读取一个 SQL XML 值,并以 Java 编程语言中 SQLXML 对象的形式返回。
 String readString()
          读取流中的下一个属性并将其作为 Java 编程语言中的 String 返回。
 Time readTime()
          读取流中的下一个属性并将其作为 java.sql.Time 对象返回。
 Timestamp readTimestamp()
          读取流中的下一个属性并将其作为 java.sql.Timestamp 对象返回。
 URL readURL()
          从流中读取 SQL DATALINK 值并将其作为 Java 编程语言中的 java.net.URL 对象返回。
 boolean wasNull()
          获取最后一个读取的值是否为 SQL NULL
 

方法详细信息

readString

String readString()
                  throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 String 返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readBoolean

boolean readBoolean()
                    throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 boolean 返回。

返回:
属性;如果值为 SQL NULL,则返回 false
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readByte

byte readByte()
              throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 byte 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readShort

short readShort()
                throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 short 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readInt

int readInt()
            throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 int 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readLong

long readLong()
              throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 long 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readFloat

float readFloat()
                throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 float 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readDouble

double readDouble()
                  throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 double 返回。

返回:
属性;如果值为 SQL NULL,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readBigDecimal

BigDecimal readBigDecimal()
                          throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的 java.math.BigDecimal 对象返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readBytes

byte[] readBytes()
                 throws SQLException
读取流中的下一个属性并将其作为 Java 编程语言中的字节数组返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readDate

Date readDate()
              throws SQLException
读取流中的下一个属性并将其作为 java.sql.Date 对象返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readTime

Time readTime()
              throws SQLException
读取流中的下一个属性并将其作为 java.sql.Time 对象返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readTimestamp

Timestamp readTimestamp()
                        throws SQLException
读取流中的下一个属性并将其作为 java.sql.Timestamp 对象返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readCharacterStream

Reader readCharacterStream()
                           throws SQLException
读取流中的下一个属性并将其作为 Unicode 字符流返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readAsciiStream

InputStream readAsciiStream()
                            throws SQLException
读取流中的下一个属性并将其作为 ASCII 字符流返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readBinaryStream

InputStream readBinaryStream()
                             throws SQLException
读取流中的下一个属性并将其作为未解释的字节流返回。

返回:
属性;如果值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readObject

Object readObject()
                  throws SQLException
读取流头中的下一个属性并将其作为 Java 编程语言中的 Object 返回。返回对象的实际类型由默认类型映射关系和此流的类型映射表中存在的自定义设置来确定。

类型映射表在将流传递给应用程序前通过 JDBC 驱动程序在流中注册。

当流的头 (head of the stream) 中的数据为 SQL NULL 时,该方法返回 null。如果数据为 SQL 结构化类型或不同类型,则该方法确定了流的头中的数据的 SQL 类型。如果流的类型映射表具有该 SQL 类型的项,则驱动程序将构造相应类的对象,并对该对象调用 SQLData.readSQL 方法,该方法使用为它描述的协议从流读取其他数据。

返回:
作为 Java 编程语言中的 Object 返回流的头中的数据;如果数据为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readRef

Ref readRef()
            throws SQLException
从流读取 SQL REF 值并将其作为 Java 编程语言中的 Ref 对象返回。

返回:
表示流的头中的 SQL REF 值的 Ref 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readBlob

Blob readBlob()
              throws SQLException
从流中读取 SQL BLOB 值并将其作为 Java 编程语言中的 Blob 对象返回。

返回:
表示流的头中的 SQL BLOB 值数据的 Blob 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readClob

Clob readClob()
              throws SQLException
从流中读取 SQL CLOB 值并将其作为 Java 编程语言中的 Clob 对象返回。

返回:
表示流的头中的 SQL CLOB 值数据的 Clob 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readArray

Array readArray()
                throws SQLException
从流中读取 SQL ARRAY 值并将其作为 Java 编程语言中的 Array 对象返回。

返回:
表示流的头中的 SQL ARRAY 值数据的 Array 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

wasNull

boolean wasNull()
                throws SQLException
获取最后一个读取的值是否为 SQL NULL

返回:
如果最近读取的 SQL 值为 SQL NULL,则返回 true;否则返回 false
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.2

readURL

URL readURL()
            throws SQLException
从流中读取 SQL DATALINK 值并将其作为 Java 编程语言中的 java.net.URL 对象返回。

返回:
java.net.URL 对象。
抛出:
SQLException - 如果发生数据库访问错误或者 URL 是错误的
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.4

readNClob

NClob readNClob()
                throws SQLException
从流中读取一个 SQL NCLOB 值,并以 Java 编程语言中 NCLOB 对象的形式返回。

返回:
表示流的头中的 SQL NCLOB 值数据的 NClob 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

readNString

String readNString()
                   throws SQLException
读取流中的下一个属性,并以 Java 编程语言中 String 的形式返回。此方法用于访问 NCHARNVARCHARLONGNVARCHAR 列时。

返回:
属性;如果该值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

readSQLXML

SQLXML readSQLXML()
                  throws SQLException
从流中读取一个 SQL XML 值,并以 Java 编程语言中 SQLXML 对象的形式返回。

返回:
表示流的头中的 SQL XML 值数据的 SQLXML 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

readRowId

RowId readRowId()
                throws SQLException
从流中读取一个 SQL ROWID 值,并以 Java 编程语言中 RowId 对象的形式返回。

返回:
表示流的头中的 SQL ROWID 值数据的 RowId 对象;如果读取的值为 SQL NULL,则返回 null
抛出:
SQLException - 如果发生数据库访问错误
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
从以下版本开始:
1.6

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策