
# java.sql.Array
java.sql.Array接口是JDBC对SQL集合类型的映射，提供了将SQL数据以数组或ResultSet对象的形式传输到客户端的方法。
表1java.sql.Array常用方法 
| 方法名                                                                          | 返回值类型     | throws       | 支持JDBC4 |
|:---|:---|:---|:---|
| getBaseTypeName()                                                            | String    | SQLException | Yes     |
| getBaseType()                                                                | int       | SQLException | Yes     |
| getArray()                                                                   | Object    | SQLException | Yes     |
| getArray(java.util.Map\<String,Class\<?\>\> map)                             | Object    | SQLException | No      |
| getArray(long index, int count)                                              | Object    | SQLException | Yes     |
| getArray(long index, int count, java.util.Map\<String,Class\<?\>\> map)      | Object    | SQLException | No      |
| getResultSet()                                                               | ResultSet | SQLException | No      |
| getResultSet(java.util.Map\<String,Class\<?\>\> map)                         | ResultSet | SQLException | No      |
| getResultSet(long index, int count)                                          | ResultSet | SQLException | No      |
| getResultSet (long index, int count, java.util.Map\<String,Class\<?\>\> map) | ResultSet | SQLException | No      |
| free()                                                                       | void      | SQLException | No      |
   
![](https://support.huaweicloud.com/distributed-devg-v10-gaussdb/public_sys-resources/note_3.0-zh-cn.png)
- getArray和getArray(long index, int count)接口获取的数组类型可参考[数据类型映射关系](https://support.huaweicloud.com/distributed-devg-v10-gaussdb/gaussdb-12-0309.html)的JAVA变量类型列。
  例如：元素类型为varchar，getArray接口获取的对象类型为String\[\]。
  特殊说明：元素类型为int2/smallint，元素存取为Short类型，getArray接口获取的对象类型为Short\[\]。
  
- getBaseType接口获取的sqlType可参考[数据类型映射关系](https://support.huaweicloud.com/distributed-devg-v10-gaussdb/gaussdb-12-0309.html)的JDBC类型索引列。
- getBaseTypeName获取的元素类型名可参考[数据类型映射关系](https://support.huaweicloud.com/distributed-devg-v10-gaussdb/gaussdb-12-0309.html)，其中集合类型、数组类型、record类型的类型名映射规则如下：
  1. 若为package里定义的类型，类型名通常格式为schema.package.type。
     若schema、package、type中有任意名称不符合规则，则类型名格式为"schema"."package"."type"：
     - 只能包含字母、数字或下划线。
     
     - 第一个字符不能是数字。
       
  
  2. 若为schema里定义的类型，类型名通常格式为schema.type。
     若schema、type中有任意名称不符合规则，则类型名格式为"schema"."type"：
     - 只能包含字母、数字或下划线。
     
     - 第一个字符不能是数字。
       
   
- 对于getArray(long index, int count)接口
  1. 起始元素的index为1；
  
  2. index的取值范围为1-2147483647，index的输入超范围时报错；
  
  3. count的取值范围为0-2147483647，count的输入超范围时报错；
  
  4. 若index大于元素个数，则返回空数组（长度为0的数组）；
  
  5. 若count超出按当前index可获取的最大元素的数量，则返回剩余元素组成的数组。
   
 
