Module java.sql
Package java.sql

Interface Array

All Known Implementing Classes:
SerialArray

public interface Array
The mapping in the Java programming language for the SQL type ARRAY. By default, an Array value is a transaction-duration reference to an SQL ARRAY value. By default, an Array object is implemented using an SQL LOCATOR(array) internally, which means that an Array object contains a logical pointer to the data in the SQL ARRAY value rather than containing the ARRAY value's data.

The Array interface provides methods for bringing an SQL ARRAY value's data to the client as either an array or a ResultSet object. If the elements of the SQL ARRAY are a UDT, they may be custom mapped. To create a custom mapping, a programmer must do two things:

  • create a class that implements the SQLData interface for the UDT to be custom mapped.
  • make an entry in a type map that contains
    • the fully-qualified SQL type name of the UDT
    • the Class object for the class implementing SQLData

When a type map with an entry for the base type is supplied to the methods getArray and getResultSet, the mapping it contains will be used to map the elements of the ARRAY value. If no type map is supplied, which would typically be the case, the connection's type map is used by default. If the connection's type map or a type map supplied to a method has no entry for the base type, the elements are mapped according to the standard mapping.

All methods on the Array interface must be fully implemented if the JDBC driver supports the data type.

Since:
1.2
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    This method frees the Array object and releases the resources that it holds.
    Retrieves the contents of the SQL ARRAY value designated by this Array object in the form of an array in the Java programming language.
    getArray(long index, int count)
    Retrieves a slice of the SQL ARRAY value designated by this Array object, beginning with the specified index and containing up to count successive elements of the SQL array.
    getArray(long index, int count, Map<String,Class<?>> map)
    Retrieves a slice of the SQL ARRAY value designated by this Array object, beginning with the specified index and containing up to count successive elements of the SQL array.
    Retrieves the contents of the SQL ARRAY value designated by this Array object.
    int
    Retrieves the JDBC type of the elements in the array designated by this Array object.
    Retrieves the SQL type name of the elements in the array designated by this Array object.
    Retrieves a result set that contains the elements of the SQL ARRAY value designated by this Array object.
    getResultSet(long index, int count)
    Retrieves a result set holding the elements of the subarray that starts at index index and contains up to count successive elements.
    getResultSet(long index, int count, Map<String,Class<?>> map)
    Retrieves a result set holding the elements of the subarray that starts at index index and contains up to count successive elements.
    Retrieves a result set that contains the elements of the SQL ARRAY value designated by this Array object.
  • Method Details

    • getBaseTypeName

      String getBaseTypeName() throws SQLException
      Retrieves the SQL type name of the elements in the array designated by this Array object. If the elements are a built-in type, it returns the database-specific type name of the elements. If the elements are a user-defined type (UDT), this method returns the fully-qualified SQL type name.
      Returns:
      a String that is the database-specific name for a built-in base type; or the fully-qualified SQL type name for a base type that is a UDT
      Throws:
      SQLException - if an error occurs while attempting to access the type name
      SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      Since:
      1.2
    • getBaseType

      int getBaseType() throws SQLException
      Retrieves the JDBC type of the elements in the array designated by this Array object.
      Returns:
      a constant from the class Types that is the type code for the elements in the array designated by this Array object
      Throws:
      SQLException - if an error occurs while attempting to access the base type
      SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      Since:
      1.2
    • getArray

      Object getArray() throws SQLException
      Retrieves the contents of the SQL ARRAY value designated by this Array object in the form of an array in the Java programming language. This version of the method getArray uses the type map associated with the connection for customizations of the type mappings.

      Note: When getArray is used to materialize a base type that maps to a primitive data type, then it is implementation-defined whether the array returned is an array of that primitive data type or an array of Object.

      Returns:
      an array in the Java programming language that contains the ordered elements of the SQL ARRAY value designated by this Array object
      Throws:
      SQLException - if an error occurs while attempting to access the array
      SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      Since:
      1.2
    • getArray

      Object getArray(Map<String,Class<?>> map) throws SQLException
      Retrieves the contents of the SQL ARRAY value designated by this Array object. This method uses the specified map for type map customizations unless the base type of the array does not match a user-defined type in map, in which case it uses the standard mapping. This version of the method getArray uses either the given type map or the standard mapping; it never uses the type map associated with the connection.

      Note: When getArray is used to materialize a base type that maps to a primitive data type, then it is implementation-defined whether the array returned is an array of that primitive data type or an array of Object.

      Parameters:
      map - a java.util.Map object that contains mappings of SQL type names to classes in the Java programming language
      Returns:
      an array in the Java programming language that contains the ordered elements of the SQL array designated by this object
      Throws:
      SQLException - if an error occurs while attempting to access the array
      SQLFeatureNotSupportedException - if the JDBC driver does not support this method
      Since:
      1.2
    • getArray

      Object getArray(long index, int count) throws