public interface Array
SQL 类型 ARRAY
在 Java 编程语言中的映射关系。默认情况下,Array
值是对 SQL ARRAY
值的事务处理期引用。默认情况下,Array
对象是使用 SQL LOCATOR(array) 内部实现的,这意味着 Array
对象包含一个指向 SQL ARRAY
值中数据的逻辑指针,而不是包含 ARRAY
值的数据。
Array
接口提供了某些方法将 SQL ARRAY
值的数据作为数组或 ResultSet
对象传送到客户端。如果 SQL ARRAY
的元素是一个 UDT,那么可以自定义映射它们。要创建自定义映射关系,编程人员必须做两件事:
SQLData
接口的类。 SQLData
的类的 Class
对象 在将带有对应于基本类型的项的类型映射表提供给 getArray
和 getResultSet
方法时,该表所包含的映射关系将用于映射 ARRAY
值的元素。如果没有提供类型映射表(通常是这种情况),则默认使用连接的类型映射表。如果该连接的类型映射表或为某一方法提供的类型映射表没有对应于基本类型的项,则根据标准映射关系来映射这些元素。
如果 JDBC 驱动程序支持该数据类型,则必须完全实现 Array
接口上的所有方法。
方法摘要 | |
---|---|
void |
free() 此方法释放 Array 对象以及它占用的资源。 |
Object |
getArray() 以 Java 编程语言数组的形式获取由此 Array 对象指定的 SQL ARRAY 值的内容。 |
Object |
getArray(long index, int count) 获取由此 Array 对象指定的 SQL ARRAY 值的一部分,从指定 index 开始,包含 SQL 数组中 count 个连续元素。 |
Object |
getArray(long index, int count, Map<String,Class<?>> map) 获取由此 ARRAY 对象指定的 SQL Array 值的一部分,从指定 index 开始,包含 SQL 数组中 count 个连续元素。 |
Object |
getArray(Map<String,Class<?>> 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 个连续元素。 |
ResultSet |
getResultSet(long index, int count, Map<String,Class<?>> map) 获取保存子数组的元素的结果集合,从索引 index 开始,包含 count 个连续元素。 |
ResultSet |
getResultSet(Map<String,Class<?>> map) 获取包含由此 Array 对象指定的 SQL ARRAY 值的元素的结果集合。 |
方法详细信息 |
---|
String getBaseTypeName() throws SQLException
Array
对象指定的数组中获取元素的 SQL 类型名称。如果元素是内置类型,则返回这些元素特定于数据库的类型名称。如果元素是用户定义类型 (UDT),则此方法返回完全限定 SQL 类型名称。
String
,对于内置基本类型,该字符串是特定于数据库的名称;对于为 UDT 的基本类型,该字符串是完全限定的 SQL 类型名称
SQLException
- 如果在试图访问该类型名称时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
int getBaseType() throws SQLException
Array
对象指定的数组中获取元素的 JDBC 类型。
Types
类中的一个常量,它是由此
Array
对象指定的数组中的元素的类型代码
SQLException
- 如果在试图访问该基本类型时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
Object getArray() throws SQLException
Array
对象指定的 SQL
ARRAY
值的内容。这一
getArray
方法使用与该连接相关联的类型映射表来自定义类型映射关系。
注意:当 getArray
用于实现映射到基本数据类型的基类型时,返回数组是该基本数据类型数组还是 Object
数组将由实现定义。
Array
对象指定的 SQL
ARRAY
值的有序元素
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
Object getArray(Map<String,Class<?>> map) throws SQLException
Array
对象指定的 SQL
ARRAY
值的内容。此方法使用指定的
map
进行类型映射自定义,除非数组的基本类型与
map
中用户定义类型不匹配,这种情况下使用标准映射关系。这一
getArray
方法使用给定类型映射表或标准映射关系;它绝不会使用与连接关联的类型映射表。
注意:当 getArray
用于实现映射到基本数据类型的基类型时,返回数组是该基本数据类型数组还是 Object
数组将由实现定义。
map
- 一个
java.util.Map
对象,该对象包含 SQL 类型名称到 Java 编程语言形式的类的映射关系
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
Object getArray(long index, int count) throws SQLException
Array
对象指定的 SQL
ARRAY
值的一部分,从指定
index
开始,包含 SQL 数组中
count
个连续元素。此方法使用与连接关联的类型映射表来自定义类型映射关系。
注意:当 getArray
用于实现映射到基本数据类型的基类型时,返回数组是该基本数据类型数组还是 Object
数组将由实现定义。
index
- 要获取的第一个元素的数组索引;第一个元素位于索引 1 处
count
- 要获取的连续 SQL 数组元素的数量
count
个连续 SQL 数组元素的数组,从元素
index
开始
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
Object getArray(long index, int count, Map<String,Class<?>> map) throws SQLException
ARRAY
对象指定的 SQL
Array
值的一部分,从指定
index
开始,包含 SQL 数组中
count
个连续元素。
此方法使用指定的 map
进行类型映射自定义,除非数组的基本类型与 map
中用户定义类型不匹配,这种情况下使用标准映射关系。这一 getArray
方法使用给定类型映射表或标准映射关系;它绝不会使用与连接关联的类型映射表。
注意:当 getArray
用于实现映射到基本数据类型的基类型时,返回数组是该基本数据类型数组还是 Object
数组将由实现定义。
index
- 要获取的第一个元素的数组索引;第一个元素位于索引 1 处
count
- 要获取的连续 SQL 数组元素的数量
map
- 一个
java.util.Map
对象,该对象包含 SQL 类型名称以及它们所映射的 Java 编程语言形式的类
Array
对象指定的 SQL
ARRAY
值的
count
个连续元素(从元素
index
开始)
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
ResultSet getResultSet() throws SQLException
Array
对象指定的 SQL
ARRAY
值的元素的结果集合。如果合适,则使用该连接的类型映射表来映射数组的元素;否则使用标准映射关系。
结果集合中每个数组元素占一行,每行有两列。第二列存储元素值;第一列存储元素数组中的索引(第一个数组元素位于索引 1 处)。这些行按升序排列,对应于索引的顺序。
ResultSet
对象,它在为此
Array
对象指定的数组中的每个元素包含一个行,这些行基于索引按升序排列。
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
ResultSet getResultSet(Map<String,Class<?>> map) throws SQLException
Array
对象指定的 SQL
ARRAY
值的元素的结果集合。此方法使用指定的
map
进行类型映射自定义,除非数组的基本类型与
map
中用户定义类型不匹配,这种情况下使用标准映射关系。这一
getResultSet
方法使用给定类型映射表或标准映射关系;它绝不会使用与连接关联的类型映射表。
结果集合中每个数组元素占一行,每行有两列。第二列存储元素值;第一列存储元素数组中的索引(第一个数组元素位于索引 1 处)。这些行按升序排列,对应于索引的顺序。
map
- 包含 SQL 用户定义类型到 Java 编程语言形式的类的映射关系
ResultSet
对象,它在为此
Array
对象指定的数组中的每个元素包含一个行,这些行基于索引按升序排列。
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
ResultSet getResultSet(long index, int count) throws SQLException
index
开始,包含
count
个连续元素。此方法使用连接的类型映射表来映射数组的元素,如果该映射表包含一个对应于基本类型的项。否则使用标准映射关系。
结果集合中此对象指定的 SQL 数组的每个元素对应有一个行,第一行包含位于索引 index
处的元素。结果集合中包含 count
个行,这些行基于索引按升序排列。每行有两列:第二列存储元素值;第一列存储该元素数组中的索引。
index
- 要获取的第一个元素的数组索引;第一个元素位于索引 1 处
count
- 要获取的连续 SQL 数组元素的数量
ResultSet
对象,该对象包含此
Array
对象指定的 SQL 数组的
count
个连续元素(从索引
index
开始)。
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
ResultSet getResultSet(long index, int count, Map<String,Class<?>> map) throws SQLException
index
开始,包含
count
个连续元素。此方法使用指定的
map
进行类型映射自定义,除非数组的基本类型与
map
中用户定义类型不匹配,这种情况下使用标准映射关系。这一
getResultSet
方法使用给定类型映射表或标准映射关系;它绝不会使用与连接关联的类型映射表。
结果集合中此对象指定的 SQL 数组的每个元素对应有一个行,第一行包含位于索引 index
处的元素。结果集合中包含 count
个行,这些行基于索引按升序排列。每行有两列:第二列存储元素值;第一列存储该元素数组中的索引。
index
- 要获取的第一个元素的数组索引;第一个元素位于索引 1 处
count
- 要获取的连续 SQL 数组元素的数量
map
-
Map
对象,包含从 SQL 类型名称到 Java(tm) 编程语言形式的类的映射关系
ResultSet
对象,该对象包含此
Array
对象指定的 SQL 数组的
count
个连续元素(从索引
index
开始)。
SQLException
- 如果在试图访问该数组时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法
void free() throws SQLException
Array
对象以及它占用的资源。调用
free
方法后,该对象无效。
已调用 free
之后,任何调用 free
以外方法的尝试将会导致抛出 SQLException
。如果多次调用 free
,则后续对 free
的调用被视为无操作。
SQLException
- 如果释放 Array 资源时发生错误
SQLFeatureNotSupportedException
- 如果 JDBC 驱动程序不支持此方法