模块  java.sql
软件包  java.sql

Interface Array

  • 所有已知实现类:
    SerialArray

    public interface Array
    用于SQL类型ARRAY的Java编程语言中的ARRAY 默认情况下, Array值是对SQL ARRAY值的事务持续时间引用。 默认情况下, Array对象在内部使用SQL LOCATOR(数组)实现,这意味着Array对象包含指向SQL ARRAY值中数据的逻辑指针,而不是包含ARRAY值的数据。

    Array接口提供了将SQL ARRAY值的数据作为数组或ResultSet对象ResultSet客户端的ResultSet 如果SQL ARRAY的元素是UDT,则它们可以是自定义映射的。 要创建自定义映射,程序员必须做两件事:

    • 创建一个实现SQLData接口的类,以便自定义映射UDT。
    • 在包含的类型映射中创建一个条目
      • UDT的完全限定SQL类型名称
      • 实现SQLData的类的对象

    当具有基本类型条目的类型映射提供给方法getArraygetResultSet ,它包含的映射将用于映射ARRAY值的元素。 如果没有提供类型映射(通常是这种情况),则默认使用连接的类型映射。 如果连接的类型映射或提供给方法的类型映射没有基本类型的条目,则根据标准映射映射元素。

    如果JDBC驱动程序支持数据类型,则必须完全实现Array接口上的所有方法。

    从以下版本开始:
    1.2
    • 方法摘要

      所有方法  实例方法 抽象方法 
      变量和类型 方法 描述
      void free()
      此方法释放 Array对象并释放它所拥有的资源。
      Object getArray()
      以Java编程语言中的数组形式检索此 Array对象指定的SQL ARRAY值的内容。
      Object getArray​(long index, int count)
      检索SQL的切片 ARRAY通过该指定值 Array对象,与指定的开始 index和含有最多 count SQL数组中连续元素。
      Object getArray​(long index, int count, Map<String,​<?>> map)
      检索SQL的切片 ARRAY通过该指定值 Array对象,与指定的开始 index和含有最多 count SQL数组中连续元素。
      Object getArray​(Map<String,​<?>> map)
      检索此 Array对象指定的SQL ARRAY值的内容。
      int getBaseType()
      检索此 Array对象指定的数组中元素的JDBC类型。
      String getBaseTypeName()
      检索此 Array对象指定的数组中元素的SQL类型名称。
      ResultSet getResultSet()
      检索包含此 Array对象指定的SQL ARRAY值的元素的结果集。
      ResultSet getResultSet​(long index, int count)
      检索包含从索引 index开始并且包含最多 count连续元素的子 index元素的结果集。
      ResultSet getResultSet​(long index, int count, Map<String,​<?>> map)
      检索包含从索引 index开始并且包含多达 count连续元素的子 index元素的结果集。
      ResultSet getResultSet​(Map<String,​<?>> map)
      检索包含此 Array对象指定的SQL ARRAY值的元素的结果集。
    • 方法详细信息

      • getBaseTypeName

        String getBaseTypeName()                throws SQLException
        检索此Array对象指定的数组中元素的SQL类型名称。 如果元素是内置类型,则返回元素的特定于数据库的类型名称。 如果元素是用户定义的类型(UDT),则此方法返回完全限定的SQL类型名称。
        结果
        String ,它是内置基本类型的特定于数据库的名称; 或者作为UDT的基类型的完全限定的SQL类型名称
        异常
        SQLException - 如果在尝试访问类型名称时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getBaseType

        int getBaseType()         throws SQLException
        检索此 Array对象指定的数组中元素的JDBC类型。
        结果
        来自类Types的常量,它是此Array对象指定的数组中元素的类型代码
        异常
        SQLException - 如果在尝试访问基本类型时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getArray

        Object getArray()         throws SQLException
        以Java编程语言中的数组形式检索此Array对象指定的SQL ARRAY值的内容。 此版本的方法getArray使用与连接相关联的类型映射来进行类型映射的自定义。

        注意:getArray用于实现映射到基本数据类型的基类型时,无论返回的数组是原始数据类型的数组还是Object的数组,它都是实现定义的。

        结果
        Java编程语言中的数组,包含此 Array对象指定的SQL ARRAY值的有序元素
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getArray

        Object getArray​(Map<String,​<?>> map)         throws SQLException
        检索此Array对象指定的SQL ARRAY值的内容。 此方法使用指定的map进行类型映射自定义,除非数组的基类型与map中的用户定义类型不匹配,在这种情况下,它使用标准映射。 方法getArray此版本使用给定类型映射或标准映射; 它从不使用与连接关联的类型映射。

        注意:getArray用于实现映射到基本数据类型的基类型时,无论返回的数组是原始数据类型的数组还是Object的数组,它都是实现定义的。

        参数
        map - 一个 java.util.Map对象,包含Java类型名称到Java编程语言中的类的映射
        结果
        Java编程语言中的数组,包含此对象指定的SQL数组的有序元素
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getArray

        Object getArray​(long index,                int count)         throws SQLException
        检索SQL的切片ARRAY通过该指定值Array对象,与指定的开始index和含有最多count SQL数组中连续元素。 此方法使用与连接关联的类型映射来进行类型映射的自定义。

        注意:getArray用于实现映射到基本数据类型的基类型时,无论返回的数组是原始数据类型的数组还是Object的数组,它都是实现定义的。

        参数
        index - 要检索的第一个元素的数组索引; 第一个元素是索引1
        count - 要检索的连续SQL数组元素的数量
        结果
        包含最多 count个SQL数组的连续元素的数组,以元素 index
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getArray

        Object getArray​(long index,                int count,                Map<String,​<?>> map)         throws SQLException
        检索SQL的切片ARRAY通过该指定值Array对象,与指定的开始index和含有最多count SQL数组中连续元素。

        此方法使用指定的map进行类型映射自定义,除非数组的基本类型与map中的用户定义类型不匹配,在这种情况下,它使用标准映射。 此版本的方法getArray使用给定的类型映射或标准映射; 它从不使用与连接关联的类型映射。

        注意:当使用getArray实现映射到基本数据类型的基类型时,无论返回的数组是原始数据类型的数组还是Object的数组,它都是实现定义的。

        参数
        index - 要检索的第一个元素的数组索引; 第一个元素是索引1
        count - 要检索的连续SQL数组元素的数量
        map - 包含SQL类型名称的 java.util.Map对象以及它们映射到的Java编程语言中的类
        结果
        包含此 Array对象指定的SQL ARRAY值的最多 count个连续元素的数组,以元素 index
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getResultSet

        ResultSet getResultSet()                throws SQLException
        检索包含此Array对象指定的SQL ARRAY值的元素的结果集。 如果合适,使用连接的类型映射映射数组的元素; 否则,使用标准映射。

        结果集为每个数组元素包含一行,每行包含两列。 第二列存储元素值; 第一列将索引存储到该元素的数组中(第一个数组元素位于索引1处)。 行按升序对应于索引的顺序。

        结果
        ResultSet对象,包含由此Array对象指定的数组中的每个元素的Array ,其中行根据索引按升序排列。
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getResultSet

        ResultSet getResultSet​(Map<String,​<?>> map)                throws SQLException
        检索包含此Array对象指定的SQL ARRAY值的元素的结果集。 此方法使用指定的map进行类型映射自定义,除非数组的基类型与map中的用户定义类型不匹配,在这种情况下,它使用标准映射。 此版本的方法getResultSet使用给定的类型映射或标准映射; 它从不使用与连接关联的类型映射。

        结果集为每个数组元素包含一行,每行包含两列。 第二列存储元素值; 第一列将索引存储到该元素的数组中(第一个数组元素位于索引1处)。 行按升序对应于索引的顺序。

        参数
        map - 包含SQL用户定义类型到Java编程语言中的类的映射
        结果
        ResultSet对象,该对象包含由此 Array对象指定的数组中的每个元素的 Array ,其中行根据索引按升序排列。
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getResultSet

        ResultSet getResultSet​(long index,                       int count)                throws SQLException
        检索包含从索引index开始并且包含最多count连续元素的子index元素的结果集。 如果映射包含基本类型的条目,则此方法使用连接的类型映射来映射数组的元素。 否则,使用标准映射。

        对于由此对象指定的SQL数组的每个元素,结果集都有一行,第一行包含索引index处的元素。 结果集根据索引按升序排列最多count行。 每行有两列:第二列存储元素值; 第一列将索引存储到该元素的数组中。

        参数
        index - 要检索的第一个元素的数组索引; 第一个元素是索引1
        count - 要检索的连续SQL数组元素的数量
        结果
        ResultSet对象,包含此 Array对象指定的SQL数组的最多 count个连续元素,从索引 index开始。
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • getResultSet

        ResultSet getResultSet​(long index,                       int count,                       Map<String,​<?>> map)                throws SQLException
        检索包含从索引index开始并且包含最多count连续元素的子index元素的结果集。 此方法使用指定的map进行类型映射自定义,除非数组的基类型与map中的用户定义类型不匹配,在这种情况下,它使用标准映射。 此版本的方法getResultSet使用给定的类型映射或标准映射; 它从不使用与连接关联的类型映射。

        对于由此对象指定的SQL数组的每个元素,结果集具有一行,第一行包含索引index处的元素。 结果集根据索引按升序排列最多count行。 每行有两列:第二列存储元素值; 第一列将索引存储到该元素的数组中。

        参数
        index - 要检索的第一个元素的数组索引; 第一个元素是索引1
        count - 要检索的连续SQL数组元素的数量
        map - 包含Java类型名称到Java(tm)编程语言中的类的映射的 Map对象
        结果
        ResultSet对象,包含由该 Array对象指定的SQL数组的最多 count个连续元素,从索引 index开始。
        异常
        SQLException - 如果在尝试访问阵列时发生错误
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.2
      • free

        void free()   throws SQLException
        此方法释放Array对象并释放它所拥有的资源。 调用free方法后,该对象无效。

        free之后,任何调用free以外的方法的尝试free将导致抛出SQLException 如果free被多次调用,在后续调用free被视为无操作。

        异常
        SQLException - 如果发生错误,则释放阵列的资源
        SQLFeatureNotSupportedException - 如果JDBC驱动程序不支持此方法
        从以下版本开始:
        1.6