- 所有已实现的接口:
SQLInput
SQLInputImpl 对象是一个输入流,其中包含作为 UDT 属性的值流。
当在具有自定义映射的 SQL 结构或不同类型上调用方法 getObject 时,驱动程序在后台使用此类;程序员从不直接调用 SQLInputImpl 方法。此处提供它们是为了方便那些编写 RowSet 实现的人。
SQLInputImpl 类提供了一组类似于 ResultSet getter 方法的读取器方法。这些方法可以读取 SQLInputImpl 对象中的值。
方法wasNull用于判断最后读取的值是否为SQLNULL。
当使用实现接口 SQLData 的类的对象调用方法 getObject 时,JDBC 驱动程序调用方法 SQLData.getSQLType 来确定自定义映射的 UDT 的 SQL 类型。驱动程序创建 SQLInputImpl 的实例,并使用 UDT 的属性填充它。然后,驱动程序将输入流传递给方法 SQLData.readSQL,后者又调用 SQLInputImpl 读取器方法以从输入流中读取属性。
- 自从:
- 1.5
- 参见:
-
构造方法总结
构造方法构造方法描述SQLInputImpl(Object[] attributes, Map<String, Class<?>> map) 创建一个用给定的属性数组和给定的类型映射初始化的SQLInputImpl对象。 -
方法总结
修饰符和类型方法描述从流中读取 SQLARRAY值并将其作为 Java 编程语言中的Array对象返回。将此SQLInputImpl对象中的下一个属性作为 ASCII 字符流返回。检索此SQLInputImpl对象中的下一个属性作为java.math.BigDecimal。将此SQLInputImpl对象中的下一个属性作为未解释的字节流返回。readBlob()检索此SQLInputImpl对象头部的BLOB值作为 Java 编程语言中的Blob对象。boolean检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的boolean。bytereadByte()检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的byte。byte[]检索此SQLInputImpl对象中的下一个属性作为字节数组。检索此SQLInputImpl对象中的下一个属性作为 Unicode 字符流。readClob()检索此SQLInputImpl对象头部的CLOB值作为 Java 编程语言中的Clob对象。readDate()检索此SQLInputImpl中的下一个属性作为java.sql.Date对象。double检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的double。float检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的float。intreadInt()检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的int。longreadLong()检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的long。从流中读取 SQLNCLOB值并将其作为 Java 编程语言中的Clob对象返回。读取流中的下一个属性并将其作为 Java 编程语言中的String返回。检索此SQLInputImpl对象头部的值作为 Java 编程语言中的Object。readRef()检索此SQLInputImpl对象头部的值作为 Java 编程语言中的Ref对象。从流中读取 SQLROWID值并将其作为 Java 编程语言中的RowId对象返回。short检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的short。从流中读取 SQLXML值并将其作为 Java 编程语言中的SQLXML对象返回。检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的String。readTime()检索此SQLInputImpl对象中的下一个属性作为java.sql.Time对象。检索此SQLInputImpl对象中的下一个属性作为java.sql.Timestamp对象。readURL()从流中读取 SQLDATALINK值并将其作为 Java 编程语言中的URL对象返回。booleanwasNull()确定从此SQLInputImpl对象读取的最后一个值是否为null。在类 java.lang.Object 中声明的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait在接口 java.sql.SQLInput 中声明的方法
readObject
-
构造方法详细信息
-
SQLInputImpl
创建一个用给定的属性数组和给定的类型映射初始化的SQLInputImpl对象。如果任何属性是 UDT,其名称在类型映射的条目中,则该属性将根据相应的SQLData实现进行映射。- 参数:
attributes- 一个Object实例数组,其中每个元素都是 UDT 的一个属性。数组中属性的顺序与 UDT 定义中定义属性的顺序相同。map- 包含零个或多个条目的java.util.Map对象,每个条目由 1) 一个String给出 UDT 的完全限定名称和 2)Class对象用于定义 UDT 映射方式的SQLData实现- 抛出:
SQLException- 如果attributes或map是一个null值
-
-
方法详情
-
readString
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的String。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readString在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有其他值。
-
readBoolean
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的boolean。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readBoolean在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有其他值。
-
readByte
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的byte。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readByte在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有其他值
-
readShort
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的short。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readShort在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readInt
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的int。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readInt在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readLong
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的long。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readLong在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readFloat
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的float。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readFloat在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readDouble
检索此SQLInputImpl对象中的下一个属性作为 Java 编程语言中的double。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readDouble在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readBigDecimal
检索此SQLInputImpl对象中的下一个属性作为java.math.BigDecimal。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readBigDecimal在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readBytes
检索此SQLInputImpl对象中的下一个属性作为字节数组。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readBytes在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readDate
检索此SQLInputImpl中的下一个属性作为java.sql.Date对象。此方法不执行类型安全检查以确定返回类型是否为预期类型;此职责委托给
SQLData实现定义的 UDT 映射。- 指定者:
readDate在接口SQLInput中- 返回:
-
此
SQLInputImpl对象中的下一个属性;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置或者流中没有更多值
-
readTime
检索此SQLInputImpl对象中的下一个属性作为java.sql.Time对象。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readTime在接口SQLInput中- 返回:
-
属性;如果值为
SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readTimestamp
检索此SQLInputImpl对象中的下一个属性作为java.sql.Timestamp对象。- 指定者:
readTimestamp在接口SQLInput中- 返回:
-
属性;如果值为
SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readCharacterStream
检索此SQLInputImpl对象中的下一个属性作为 Unicode 字符流。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readCharacterStream在接口SQLInput中- 返回:
-
属性;如果值为
SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readAsciiStream
将此SQLInputImpl对象中的下一个属性作为 ASCII 字符流返回。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readAsciiStream在接口SQLInput中- 返回:
-
属性;如果值为
SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readBinaryStream
将此SQLInputImpl对象中的下一个属性作为未解释的字节流返回。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readBinaryStream在接口SQLInput中- 返回:
-
属性;如果值为
SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readObject
检索此SQLInputImpl对象头部的值作为 Java 编程语言中的Object。返回对象的实际类型由 SQL 类型到 Java 编程语言类型的默认映射确定,除非有自定义映射,在这种情况下,返回对象的类型由该流的类型映射确定。在将流传递给应用程序之前,支持 JDBC 技术的驱动程序会在流中注册一个类型映射。
当流头部的数据是 SQL
NULL时,此方法返回null。如果数据是 SQL 结构化或具有自定义映射的单值类型,则此方法确定流头部数据的 SQL 类型,构造适当类的对象,并对该对象调用方法SQLData.readSQL。readSQL方法然后调用适当的SQLInputImpl.readXXX方法从流中检索属性值。- 指定者:
readObject在接口SQLInput中- 返回:
-
流头部的值作为 Java 编程语言中的
Object;null如果值为 SQLNULL - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readRef
检索此SQLInputImpl对象头部的值作为 Java 编程语言中的Ref对象。- 指定者:
readRef在接口SQLInput中- 返回:
-
代表流头部 SQL
REF值的Ref对象;如果值为SQL NULL返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readBlob
检索此SQLInputImpl对象头部的BLOB值作为 Java 编程语言中的Blob对象。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readBlob在接口SQLInput中- 返回:
-
一个
Blob对象,表示该流头部的 SQLBLOB值;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readClob
检索此SQLInputImpl对象头部的CLOB值作为 Java 编程语言中的Clob对象。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readClob在接口SQLInput中- 返回:
-
一个
Clob对象,表示流头部的 SQLCLOB值;如果值为SQL NULL,则返回null - 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readArray
从流中读取 SQLARRAY值并将其作为 Java 编程语言中的Array对象返回。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readArray在接口SQLInput中- 返回:
Array对象表示流头部的 SQLARRAY值; * 如果值为SQL NULL,返回null- 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
wasNull
确定从此SQLInputImpl对象读取的最后一个值是否为null。- 指定者:
wasNull在接口SQLInput中- 返回:
true如果最近读取的 SQL 值是null;否则,false;默认情况下它会返回 false- 抛出:
SQLException- 如果发生错误,确定最后读取的值是否为null值;
-
readURL
从流中读取 SQLDATALINK值并将其作为 Java 编程语言中的URL对象返回。此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责已委托给由
SQLData实现实现的 UDT 映射。- 指定者:
readURL在接口SQLInput中- 返回:
URL对象表示流头部的 SQLDATALINK值; * 如果值为SQL NULL,返回null- 抛出:
SQLException- 如果读取位置位于无效位置;或者如果流中没有其他值。
-
readNClob
从流中读取 SQLNCLOB值并将其作为 Java 编程语言中的Clob对象返回。- 指定者:
readNClob在接口SQLInput中- 返回:
-
一个
NClob对象,表示流头部的 SQLNCLOB值的数据;null如果读取的值是 SQLNULL - 抛出:
SQLException- 如果发生数据库访问错误- 自从:
- 1.6
-
readNString
读取流中的下一个属性并将其作为 Java 编程语言中的String返回。它旨在用于访问NCHAR、NVARCHAR和LONGNVARCHAR列时使用。- 指定者:
readNString在接口SQLInput中- 返回:
-
属性;如果值为 SQL
NULL,则返回null - 抛出:
SQLException- 如果发生数据库访问错误- 自从:
- 1.6
-
readSQLXML
从流中读取 SQLXML值并将其作为 Java 编程语言中的SQLXML对象返回。- 指定者:
readSQLXML在接口SQLInput中- 返回:
-
一个
SQLXML对象,表示流头部的 SQLXML值的数据;null如果读取的值是 SQLNULL - 抛出:
SQLException- 如果发生数据库访问错误- 自从:
- 1.6
-
readRowId
从流中读取 SQLROWID值并将其作为 Java 编程语言中的RowId对象返回。- 指定者:
readRowId在接口SQLInput中- 返回:
-
一个
RowId对象,表示流头部的 SQLROWID值的数据;null如果读取的值是 SQLNULL - 抛出:
SQLException- 如果发生数据库访问错误- 自从:
- 1.6
-