JavaTM 2 Platform
Standard Ed. 6

java.sql
介面 SQLData


public interface SQLData

該介面用於 SQL 使用者定義型別 (UDT) 到 Java 程式語言中類別的自定義映射關係。實作 SQLData 介面的類別的類別物件將以適當的 Connection 物件型別映射連同 UDT(此物件是它的自定義映射關係)的 SQL 名稱一起進行輸入。

通常,SQLData 實作將為 SQL 結構型別的每個屬性定義一個欄位,或者為 SQL DISTINCT 型別定義單個欄位。用 ResultSet.getObject 方法從資料源獲取 UDT 時,會將其映射為此類別的實例。開發人員可以像對待 Java 程式語言中的其他物件那樣在此類別實例上執行操作,然後通過調用 PreparedStatement.setObject 方法(此方法將其映射回 SQL 型別)存儲對它所作的更改。

預期自定義映射關係的類別的實作可以通過工具完成。在典型的實作中,開發人員將僅提供 SQL UDT 的名稱、要將該名稱映射到的類別的名稱和要將 UDT 的每個屬性映射到的欄位名稱。工具將使用此資訊實作 SQLData.readSQLSQLData.writeSQL 方法。readSQL 方法調用適當的 SQLInput 方法從 SQLInput 物件讀取每個屬性,writeSQL 方法調用 SQLOutput 方法通過 SQLOutput 物件將每個屬性寫回資料源。

應用開發人員通常不直接調用 SQLData 方法,而 SQLInputSQLOutput 方法由 SQLData 方法而不是應用程序程式碼在內部調用。

從以下版本開始:
1.2

方法摘要
 String getSQLTypeName()
          返回此物件表示的 SQL 使用者定義型別的完全限定名。
 void readSQL(SQLInput stream, String typeName)
          用從資料庫讀取的資料填充此物件。
 void writeSQL(SQLOutput stream)
          將此物件寫入給定的 SQL 資料串流,同時將其轉換回資料源中它的 SQL 值。
 

方法詳細資訊

getSQLTypeName

String getSQLTypeName()
                      throws SQLException
返回此物件表示的 SQL 使用者定義型別的完全限定名。JDBC 驅動程序調用此方法來獲取 UDT 實例的名稱,該名稱將被映射到 SQLData 的這一實例。

返回:
建構和填充此物件時傳遞到方法 readSQL 的型別名稱
拋出:
SQLException - 如果發生資料庫存取錯誤
SQLFeatureNotSupportedException - 如果 JDBC 不支持此方法
從以下版本開始:
1.2

readSQL

void readSQL(SQLInput stream,
             String typeName)
             throws SQLException
用從資料庫讀取的資料填充此物件。該方法的實作必須遵守此協議: JDBC 驅動程序在調用此方法之前用型別映射初始化輸入串流,此方法由串流上適當的 SQLInput reader 方法使用。

參數:
stream - SQLInput 物件,從中讀取要自定義映射的值的資料
typeName - 資料串流上的值的 SQL 型別名稱
拋出:
SQLException - 如果發生資料庫存取錯誤
SQLFeatureNotSupportedException - 如果 JDBC 不支持此方法
從以下版本開始:
1.2
另請參見:
SQLInput

writeSQL

void writeSQL(SQLOutput stream)
              throws SQLException
將此物件寫入給定的 SQL 資料串流,同時將其轉換回資料源中它的 SQL 值。方法的實作必須遵守此協議:
必須將 SQL 型別的每個屬性寫入給定的輸出串流。此操作通過調用輸出串流的某個方法寫入每個項(按照它們在型別的 SQL 定義中顯示的順序)。明確地說,它必須調用適當的 SQLOutput writer 方法(writeIntwriteString 等)來執行以下操作:對於不同型別,寫入其單個資料元素;對於結構型別,寫入 SQL 型別的每個屬性的值。

參數:
stream - SQLOutput 物件,要在其中寫入自定義映射的值的資料
拋出:
SQLException - 如果發生資料庫存取錯誤
SQLFeatureNotSupportedException - 如果 JDBC 不支持此方法
從以下版本開始:
1.2
另請參見:
SQLOutput

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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