JavaTM 2 Platform
Standard Ed. 6

java.sql
介面 Array

所有已知實作類別:
SerialArray

public interface Array

SQL 型別 ARRAY 在 Java 程式語言中的映射關係。預設情況下,Array 值是對 SQL ARRAY 值的事務處理期參考。預設情況下,Array 物件是使用 SQL LOCATOR(array) 內部實作的,這意味著 Array 物件包含一個指向 SQL ARRAY 值中資料的邏輯指針,而不是包含 ARRAY 值的資料。

Array 介面提供了某些方法將 SQL ARRAY 值的資料作為陣列或 ResultSet 物件傳送到客戶端。如果 SQL ARRAY 的元素是一個 UDT,那麼可以自定義映射它們。要創建自定義映射關係,程式人員必須做兩件事:

在將帶有對應於基本型別的項的型別映射表提供給 getArraygetResultSet 方法時,該表所包含的映射關係將用於映射 ARRAY 值的元素。如果沒有提供型別映射表(通常是這種情況),則預設使用連接的型別映射表。如果該連接的型別映射表或為某一方法提供的型別映射表沒有對應於基本型別的項,則根據標準映射關係來映射這些元素。

如果 JDBC 驅動程序支持該資料型別,則必須完全實作 Array 介面上的所有方法。

從以下版本開始:
1.2

方法摘要
 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 值的元素的結果集合。
 

方法詳細資訊

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,Class<?>> map)
                throws SQLException
獲取由此 Array 物件指定的 SQL ARRAY 值的內容。此方法使用指定的 map 進行型別映射自定義,除非陣列的基本型別與 map 中使用者定義型別不比對,這種情況下使用標準映射關係。這一 getArray 方法使用給定型別映射表或標準映射關係;它絕不會使用與連接關聯的型別映射表。

注意:getArray 用於實作映射到基本資料型別的基礎類別型時,返回陣列是該基本資料型別陣列還是 Object 陣列將由實作定義。

參數:
map - 一個 java.util.Map 物件,該物件包含 SQL 型別名稱到 Java 程式語言形式的類別的映射關係
返回:
一個 Java 程式語言形式的陣列,該陣列包含由此物件指定的 SQL 陣列的有序元素
拋出:
SQLException - 如果在試圖存取該陣列時發生錯誤
SQLFeatureNotSupportedException - 如果 JDBC 驅動程序不支持此方法
從以下版本開始:
1.2

getArray

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 驅動程序不支持此方法
從以下版本開始:
1.2

getArray

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 驅動程序不支持此方法
從以下版本開始:
1.2

getResultSet

ResultSet getResultSet()
                       throws SQLException
獲取包含此 Array 物件指定的 SQL ARRAY 值的元素的結果集合。如果合適,則使用該連接的型別映射表來映射陣列的元素;否則使用標準映射關係。

結果集合中每個陣列元素占一行,每行有兩列。第二列存儲元素值;第一列存儲元素陣列中的索引(第一個陣列元素位於索引 1 處)。這些行按升序排列,對應於索引的順序。

返回:
一個 ResultSet 物件,它在為此 Array 物件指定的陣列中的每個元素包含一個行,這些行基於索引按升序排列。
拋出:
SQLException - 如果在試圖存取該陣列時發生錯誤
SQLFeatureNotSupportedException - 如果 JDBC 驅動程序不支持此方法
從以下版本開始:
1.2

getResultSet

ResultSet getResultSet(Map<String,Class<?>> map)
                       throws SQLException
獲取包含由此 Array 物件指定的 SQL ARRAY 值的元素的結果集合。此方法使用指定的 map 進行型別映射自定義,除非陣列的基本型別與 map 中使用者定義型別不比對,這種情況下使用標準映射關係。這一 getResultSet 方法使用給定型別映射表或標準映射關係;它絕不會使用與連接關聯的型別映射表。

結果集合中每個陣列元素占一行,每行有兩列。第二列存儲元素值;第一列存儲元素陣列中的索引(第一個陣列元素位於索引 1 處)。這些行按升序排列,對應於索引的順序。

參數:
map - 套件含 SQL 使用者定義型別到 Java 程式語言形式的類別的映射關係
返回:
一個 ResultSet 物件,它在為此 Array 物件指定的陣列中的每個元素包含一個行,這些行基於索引按升序排列。
拋出:
SQLException - 如果在試圖存取該陣列時發生錯誤
SQLFeatureNotSupportedException - 如果 JDBC 驅動程序不支持此方法
從以下版本開始:
1.2

getResultSet

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 驅動程序不支持此方法
從以下版本開始:
1.2

getResultSet

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 驅動程序不支持此方法
從以下版本開始:
1.2

free

void free()
          throws SQLException
此方法釋放 Array 物件以及它佔用的資源。調用 free 方法後,該物件無效。

已調用 free 之後,任何調用 free 以外方法的嘗試將會導致拋出 SQLException。如果多次調用 free,則後續對 free 的調用被視為無操作。

拋出:
SQLException - 如果釋放 Array 資源時發生錯誤
SQLFeatureNotSupportedException - 如果 JDBC 驅動程序不支持此方法
從以下版本開始:
1.6

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only