|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
SQL ユーザ定義型 (UDT) を Java プログラミング言語のクラスにカスタムマッピングするのに使用されるインタフェースです。SQLData
インタフェースを実装するクラスのクラスオブジェクトは、カスタムマッピングされる UDT の SQL 名とともに適切な Connection
オブジェクトの型マップに入力されます。
通常 SQLData
実装は、SQL 構造化型の各属性のフィールド、または SQL DISTINCT
型の単一フィールドを定義します。ResultSet.getObject
メソッドによってデータソースから UDT が取得されると、その UDT はこのクラスのインスタンスとしてマッピングされます。プログラマは、Java プログラミング言語の他のオブジェクトの場合と同じようにこのクラスインスタンスで操作し、PreparedStatement.setObject
メソッドを呼び出して、行った変更をこのクラスインスタンスに保存することができます。PreparedStatement.setObject
メソッドは逆にそのクラスインスタンスを SQL 型にマッピングします。
カスタムマッピングのクラスの実装をツールによって行うことが期待できます。通常の実装では、プログラマは単に SQL UDT の名前、その名前がマッピングされるクラスの名前、および UDT の各属性がマッピングされるフィールドの名前を指定するだけです。ツールはこの情報を使って SQLData.readSQL
メソッドおよび SQLData.writeSQL
メソッドを実装します。readSQL
メソッドが該当の SQLInput
メソッドを呼び出して SQLInput
オブジェクトから各属性を読み込み、writeSQL
メソッドが SQLOutput
メソッドを呼び出して SQLOutput
オブジェクトを使って各属性をデータソースに書き込みます。
通常アプリケーションプログラマが SQLData
を直接呼び出すことはなく、SQLInput
メソッドおよび SQLOutput
メソッドは、アプリケーションコードによってではなく SQLData
メソッドによって内部で呼び出されます。
メソッドの概要 | |
String |
getSQLTypeName()
このオブジェクトが表す SQL ユーザ定義型の完全指定名を返します。 |
void |
readSQL(SQLInput stream,
String typeName)
データベースから読み出したデータをこのオブジェクトに設定します。 |
void |
writeSQL(SQLOutput stream)
指定された SQL データストリームにこのオブジェクトを書き込み、逆にそれをデータソースの SQL 値に変換します。 |
メソッドの詳細 |
public String getSQLTypeName() throws SQLException
SQLData
のこのインスタンスにマッピングされる UDT インスタンスの名前を取得するために JDBC ドライバによって呼び出されます。
readSql
メソッドに渡された型名
SQLException
- データベースアクセスエラーがある場合public void readSQL(SQLInput stream, String typeName) throws SQLException
readSQL
が、このオブジェクトまたは他のオブジェクトの適切なフィールドまたは要素にデータを割り当てます。具体的には、該当する reader メソッド (SQLInput.readString
、SQLInput.readBigDecimal
など) を呼び出して次の処理を行う必要があります。個別の型の場合はその単一のデータ要素を読み込み、構造化型の場合は SQL 型の各属性の値を読み込みます。
SQLInput
reader メソッドによって使用されるこのメソッドを呼び出します。
stream
- カスタムマッピングされるデータの値を読み出す SQLInput
オブジェクトtypeName
- データストリームの値の SQL 型名
SQLException
- データベースアクセスエラーがある場合SQLInput
public void writeSQL(SQLOutput stream) throws SQLException
SQLOutput
writer メソッド (writeInt
、writeString
など) を呼び出して次の処理を行う必要があります。個別の型の場合は単一のデータ要素を書き込み、構造化型の場合は SQL 型の各属性の値を書き込みます。
stream
- カスタムマッピングされたデータの値を書き込む SQLOutput
オブジェクト
SQLException
- データベースアクセスエラーがある場合SQLOutput
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.