模块  java.sql.rowset

Class SQLInputImpl

  • 实现的所有接口
    SQLInput

    public class SQLInputImpl
    extends Object
    implements SQLInput
    用于自定义映射用户定义类型(UDT)的输入流。 SQLInputImpl对象是包含作为UDT属性的值流的输入流。

    当在具有自定义映射的SQL结构化或不同类型上调用方法getObject时, getObject由驱动程序在幕后使用; 程序员永远不会直接调用SQLInputImpl方法。 这里提供它们是为了方便那些编写RowSet实现的人。

    SQLInputImpl类提供了一组类似于ResultSet getter方法的ResultSet方法。 这些方法可以读取SQLInputImpl对象中的值。

    方法wasNull用于确定读取的最后一个值是否是SQL NULL

    当该方法getObject被调用实现该接口的类的对象SQLData ,JDBC驱动程序调用该方法SQLData.getSQLType确定UDT的SQL类型而定制映射。 驱动程序创建一个SQLInputImpl的实例,使用UDT的属性填充它。 然后,驱动程序将输入流传SQLData.readSQL方法SQLData.readSQL ,方法SQLData.readSQL又调用SQLInputImpl读取器方法从输入流中读取属性。

    从以下版本开始:
    1.5
    另请参见:
    SQLData
    • 构造方法摘要

      构造方法  
      构造器 描述
      SQLInputImpl​(Object[] attributes, Map<String,​<?>> map)
      创建使用给定的属性数组和给定的类型映射初始化的 SQLInputImpl对象。
    • 方法摘要

      所有方法  实例方法 具体的方法 
      变量和类型 方法 描述
      Array readArray()
      从流中读取SQL ARRAY值并将其作为Java编程语言中的 Array对象返回。
      InputStream readAsciiStream()
      以ASCII字符流的形式返回此 SQLInputImpl对象中的下一个属性。
      BigDecimal readBigDecimal()
      获取此的下一个属性 SQLInputImpl对象为 java.math.BigDecimal
      InputStream readBinaryStream()
      返回此 SQLInputImpl对象中的下一个属性,作为未解释的字节流。
      Blob readBlob()
      检索 BLOB这头价值 SQLInputImpl对象为 Blob的Java编程语言对象。
      boolean readBoolean()
      获取此的下一个属性 SQLInputImpl对象为 boolean的Java编程语言。
      byte readByte()
      获取此的下一个属性 SQLInputImpl对象为 byte的Java编程语言。
      byte[] readBytes()
      以字节数组的形式检索此 SQLInputImpl对象中的下一个属性。
      Reader readCharacterStream()
      以Unicode字符流的形式检索此 SQLInputImpl对象中的下一个属性。
      Clob readClob()
      检索 CLOB这头价值 SQLInputImpl对象为 Clob的Java编程语言对象。
      Date readDate()
      java.sql.Date对象的形式检索此 SQLInputImpl的下一个属性。
      double readDouble()
      获取此的下一个属性 SQLInputImpl对象为 double的Java编程语言。
      float readFloat()
      获取此的下一个属性 SQLInputImpl对象为 float的Java编程语言。
      int readInt()
      以Java编程语言中的 int检索此 SQLInputImpl对象中的下一个属性。
      long readLong()
      获取此的下一个属性 SQLInputImpl对象为 long的Java编程语言。
      NClob readNClob()
      从流中读取SQL NCLOB值并将其作为Java编程语言中的 Clob对象返回。
      String readNString()
      读取流中的下一个属性并将其作为Java编程语言中的 String返回。
      Object readObject()
      以Java编程语言中的 Object检索此 SQLInputImpl对象头部的值。
      Ref readRef()
      在检索该头价值 SQLInputImpl对象为 Ref的Java编程语言对象。
      RowId readRowId()
      从流中读取SQL ROWID值并将其作为Java编程语言中的 RowId对象返回。
      short readShort()
      获取此的下一个属性 SQLInputImpl对象为 short的Java编程语言。
      SQLXML readSQLXML()
      从流中读取SQL XML值并将其作为Java编程语言中的 SQLXML对象返回。
      String readString()
      获取此的下一个属性 SQLInputImpl对象为 String的Java编程语言。
      Time readTime()
      获取此的下一个属性 SQLInputImpl对象为 java.sql.Time的对象。
      Timestamp readTimestamp()
      获取此的下一个属性 SQLInputImpl对象为 java.sql.Timestamp的对象。
      URL readURL()
      从流中读取SQL DATALINK值并将其作为Java编程语言中的 URL对象返回。
      boolean wasNull()
      确定从此 SQLInputImpl对象读取的最后一个值是否为 null
    • 构造方法详细信息

      • SQLInputImpl

        public SQLInputImpl​(Object[] attributes,
                            Map<String,​<?>> map)
                     throws SQLException
        创建使用给定的属性数组和给定的类型映射初始化的SQLInputImpl对象。 如果任何属性是名称位于类型映射中的条目中的UDT,则将根据相应的SQLData实现映射该属性。
        参数
        attributes - Object实例的数组,其中每个元素都是UDT的属性。 数组中属性的顺序与UDT定义中定义属性的顺序相同。
        map - 包含零个或多个条目的 java.util.Map对象,每个条目由1)组成 String给出UDT的完全限定名称,以及2) SQLData实现的 对象定义UDT的映射方式
        异常
        SQLException - 如果 attributesmapnull
    • 方法详细信息

      • readString

        public String readString()
                          throws SQLException
        获取此的下一个属性SQLInputImpl对象为String的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readString在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有其他值。
      • readBoolean

        public boolean readBoolean()
                            throws SQLException
        获取此的下一个属性SQLInputImpl对象为boolean的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readBoolean在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有其他值。
      • readByte

        public byte readByte()
                      throws SQLException
        获取此的下一个属性SQLInputImpl对象为byte的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readByte在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有其他值
      • readShort

        public short readShort()
                        throws SQLException
        获取此的下一个属性SQLInputImpl对象为short的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readShort在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readInt

        public int readInt()
                    throws SQLException
        使用Java编程语言中的int检索此SQLInputImpl对象中的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readInt在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readLong

        public long readLong()
                      throws SQLException
        获取此的下一个属性SQLInputImpl对象为long的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readLong在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readFloat

        public float readFloat()
                        throws SQLException
        获取此的下一个属性SQLInputImpl对象为float的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给由SQLData实现定义的UDT映射。

        Specified by:
        readFloat在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readDouble

        public double readDouble()
                          throws SQLException
        获取此的下一个属性SQLInputImpl对象为double的Java编程语言。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readDouble在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readBigDecimal

        public BigDecimal readBigDecimal()
                                  throws SQLException
        获取此的下一个属性SQLInputImpl对象为java.math.BigDecimal

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readBigDecimal在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readBytes

        public byte[] readBytes()
                         throws SQLException
        以字节数组的形式检索此SQLInputImpl对象中的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给由SQLData实现定义的UDT映射。

        Specified by:
        readBytes在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果该值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readDate

        public Date readDate()
                      throws SQLException
        java.sql.Date对象的形式检索此SQLInputImpl的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型; 此职责委托给SQLData实现定义的UDT映射。

        Specified by:
        readDate在界面 SQLInput
        结果
        SQLInputImpl对象中的下一个属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置或流中没有更多值
      • readTime

        public Time readTime()
                      throws SQLException
        获取此的下一个属性SQLInputImpl对象为java.sql.Time的对象。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readTime在界面 SQLInput
        结果
        属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readTimestamp

        public Timestamp readTimestamp()
                                throws SQLException
        获取此的下一个属性 SQLInputImpl对象为 java.sql.Timestamp的对象。
        Specified by:
        readTimestamp在界面 SQLInput
        结果
        属性; 如果该值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readCharacterStream

        public Reader readCharacterStream()
                                   throws SQLException
        以Unicode字符流的形式检索此SQLInputImpl对象中的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readCharacterStream在界面 SQLInput
        结果
        属性; 如果值为SQL NULL ,请返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readAsciiStream

        public InputStream readAsciiStream()
                                    throws SQLException
        以ASCII字符流的形式返回此SQLInputImpl对象中的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readAsciiStream在界面 SQLInput
        结果
        属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readBinaryStream

        public InputStream readBinaryStream()
                                     throws SQLException
        以未解释的字节流的形式返回此SQLInputImpl对象中的下一个属性。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readBinaryStream在界面 SQLInput
        结果
        属性; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readObject

        public Object readObject()
                          throws SQLException
        以Java编程语言中的Object检索此SQLInputImpl对象头部的值。 返回的对象的实际类型由SQL类型到Java编程语言中的类型的默认映射确定,除非存在自定义映射,在这种情况下,返回的对象的类型由此流的类型映射确定。

        启用JDBC技术的驱动程序在将流传递给应用程序之前向流注册类型映射。

        当流的头部的数据是SQL NULL ,此方法返回null 如果数据是具有自定义映射的SQL结构或不同类型,则此方法确定流头部的数据的SQL类型,构造相应类的对象,并在该对象上调用方法SQLData.readSQL 然后, readSQL方法调用适当的SQLInputImpl.readXXX方法从流中检索属性值。

        Specified by:
        readObject在界面 SQLInput
        结果
        Object的头部的值为Java编程语言中的Object ; null若值为SQL NULL
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readRef

        public Ref readRef()
                    throws SQLException
        在检索该头价值 SQLInputImpl对象为 Ref的Java编程语言对象。
        Specified by:
        readRef在界面 SQLInput
        结果
        Ref对象,表示流头部的SQL REF值; 如果该值为SQL NULL返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readBlob

        public Blob readBlob()
                      throws SQLException
        检索BLOB这头价值SQLInputImpl对象为Blob的Java编程语言对象。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readBlob在界面 SQLInput
        结果
        Blob对象,表示此流头部的SQL BLOB值; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readClob

        public Clob readClob()
                      throws SQLException
        检索CLOB这头价值SQLInputImpl对象为Clob的Java编程语言对象。

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readClob在界面 SQLInput
        结果
        Clob对象,表示流头部的SQL CLOB值; 如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readArray

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

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readArray在界面 SQLInput
        结果
        一个Array对象,表示流头部的SQL ARRAY值; *如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • wasNull

        public boolean wasNull()
                        throws SQLException
        确定从此 SQLInputImpl对象读取的最后一个值是否为 null
        Specified by:
        wasNull在界面 SQLInput
        结果
        true如果最近读取的SQL值是null ; 否则, false ; 默认情况下,它将返回false
        异常
        SQLException - 如果发生错误,确定读取的最后一个值是否为 null ;
      • readURL

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

        此方法不执行类型安全检查以确定返回的类型是否为预期类型,因为此职责委托给由SQLData实现实现的UDT映射。

        Specified by:
        readURL在界面 SQLInput
        结果
        一个URL对象,表示流头部的SQL DATALINK值; *如果该值为SQL NULL ,则返回null
        异常
        SQLException - 如果读取位置位于无效位置; 或者如果流中没有其他值。
      • readNClob

        public NClob readNClob()
                        throws SQLException
        从流中读取SQL NCLOB值并将其作为Java编程语言中的 Clob对象返回。
        Specified by:
        readNClob在界面 SQLInput
        结果
        NClob对象,表示流头部的SQL NCLOB值的数据; null如果读取的值是SQL NULL
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.6
      • readNString

        public String readNString()
                           throws SQLException
        读取流中的下一个属性,并以Java编程语言将其作为String返回。 访问时,它适用于使用NCHARNVARCHARLONGNVARCHAR列。
        Specified by:
        readNString在界面 SQLInput
        结果
        属性; 如果值为SQL NULL ,则返回null
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.6
      • readSQLXML

        public SQLXML readSQLXML()
                          throws SQLException
        从流中读取SQL XML值并将其作为Java编程语言中的 SQLXML对象返回。
        Specified by:
        readSQLXML在界面 SQLInput
        结果
        SQLXML对象,表示流头部的SQL XML值的数据; null如果读取的值是SQL NULL
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.6
      • readRowId

        public RowId readRowId()
                        throws SQLException
        从流中读取SQL ROWID值并将其作为Java编程语言中的 RowId对象返回。
        Specified by:
        readRowId在界面 SQLInput
        结果
        RowId对象,表示流头部的SQL ROWID值的数据; null如果读取的值是SQL NULL
        异常
        SQLException - 如果发生数据库访问错误
        从以下版本开始:
        1.6