- すべての実装されたインタフェース:
SQLInput
SQLInputImpl
オブジェクトは、UDTの属性に相当する値のストリームを格納する入力ストリームです。
このクラスは、カスタム・マッピングを持つSQL構造型またはSQL個別型でgetObject
メソッドが呼び出されるとき、背後でドライバによって使用されます。プログラマが直接SQLInputImpl
メソッドを呼び出すことはありません。 これらは、RowSet
実装を記述するユーザー向けの便利なクラスとして提供されたものです。
SQLInputImpl
クラスは、ResultSet
取得メソッドと類似した一連のリーダー・メソッド・セットを提供します。 これらのメソッドには、SQLInputImpl
オブジェクト内の値の読取りを可能にする機能があります。
最終値がSQL NULL
であったかどうかの確認には、wasNull
メソッドが使用されます。
getObject
メソッドがSQLData
インタフェースを実装するクラスのオブジェクトで呼び出されると、JDBCドライバはカスタム・マッピングされるUDTのSQL型を判別するためにSQLData.getSQLType
メソッドを呼び出します。 ドライバは、SQLInputImpl
のインスタンスを作成し、UDTの属性を移植します。 次に、入力ストリームをSQLData.readSQL
メソッドに渡します。すると、このメソッドは、SQLInputImpl
readerメソッドを呼び出して、入力ストリームから属性を読み取ります。
- 導入されたバージョン:
- 1.5
- 関連項目:
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明SQLInputImpl
(Object[] attributes, Map<String, Class<?>> map) 指定された属性の配列と型マップで初期化されたSQLInputImpl
オブジェクトを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明ストリームからSQLARRAY
値を読み込み、その値をJavaプログラミング言語のArray
オブジェクトとして返します。このSQLInputImpl
オブジェクト内の次の属性をASCII文字ストリームとして取得します。このSQLInputImpl
オブジェクト内の次の属性をjava.math.BigDecimal
として取得します。このSQLInputImpl
オブジェクト内の次の属性を未解釈のバイト・ストリームとして取得します。readBlob()
このSQLInputImpl
オブジェクトの先頭のBLOB
値をJavaプログラミング言語のBlob
オブジェクトとして取得します。boolean
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のboolean
として取得します。byte
readByte()
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のbyte
として取得します。byte[]
このSQLInputImpl
オブジェクト内の次の属性をバイト配列として取得します。このSQLInputImpl
オブジェクト内の次の属性をUnicode文字ストリームとして取得します。readClob()
このSQLInputImpl
オブジェクトの先頭のCLOB
値をJavaプログラミング言語のClob
オブジェクトとして取得します。readDate()
このSQLInputImpl
内の次の属性をjava.sql.Date
オブジェクトとして取得します。double
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のdouble
として取得します。float
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のfloat
として取得します。int
readInt()
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のint
として取得します。long
readLong()
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のlong
として取得します。ストリームからSQLNCLOB
値を読み込み、その値をJavaプログラミング言語のClob
オブジェクトとして返します。ストリーム内の次の属性を読み込み、それをJavaプログラミング言語のString
として返します。このSQLInputImpl
オブジェクトの先頭の値をJavaプログラミング言語のObject
として取得します。readRef()
このSQLInputImpl
オブジェクトの先頭の値をJavaプログラミング言語のRef
オブジェクトとして取得します。ストリームからSQLROWID
値を読み込み、その値をJavaプログラミング言語のRowId
オブジェクトとして返します。short
このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のshort
として取得します。ストリームからSQLXML
値を読み込み、その値をJavaプログラミング言語のSQLXML
オブジェクトとして返します。このSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のString
として取得します。readTime()
このSQLInputImpl
オブジェクト内の次の属性をjava.sql.Time
オブジェクトとして取得します。このSQLInputImpl
オブジェクト内の次の属性をjava.sql.Timestamp
オブジェクトとして取得します。readURL()
ストリームからSQLDATALINK
値を読み込み、その値をJavaプログラミング言語のURL
オブジェクトとして返します。boolean
wasNull()
このSQLInputImpl
オブジェクトから最後に読み込まれた値がnull
かどうかを確認します。クラス java.lang.Objectで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
インタフェース java.sql.SQLInputで宣言されたメソッド
readObject
-
コンストラクタの詳細
-
SQLInputImpl
public SQLInputImpl(Object[] attributes, Map<String, Class<?>> map) throws SQLException指定された属性の配列と型マップで初期化されたSQLInputImpl
オブジェクトを作成します。 指定された属性の中にUDT属性があり、その名前のエントリが型マップ内に存在する場合、この属性は対応するSQLData
実装に従ってマップされます。- パラメータ:
attributes
-Object
インスタンスの配列(各要素はUDTの属性)。 配列内の属性の順序は、UDT定義で属性が定義された順序と同じ。map
- 0個以上のエントリを持つjava.util.Map
オブジェクト。各エントリは、(1) UDTの完全修飾名を指定するString
オブジェクトと、(2) UDTのマッピング方法を定義するSQLData
実装のClass
オブジェクトで構成される- 例外:
SQLException
-attributes
またはmap
がnull
値の場合
-
-
メソッドの詳細
-
readString
public String readString() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のString
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readString
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readBoolean
public boolean readBoolean() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のboolean
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readBoolean
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readByte
public byte readByte() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のbyte
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readByte
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readShort
public short readShort() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のshort
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readShort
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readInt
public int readInt() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のint
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readInt
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readLong
public long readLong() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のlong
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readLong
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readFloat
public float readFloat() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のfloat
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readFloat
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readDouble
public double readDouble() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をJavaプログラミング言語のdouble
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readDouble
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readBigDecimal
public BigDecimal readBigDecimal() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をjava.math.BigDecimal
として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readBigDecimal
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readBytes
public byte[] readBytes() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をバイト配列として取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readBytes
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readDate
public Date readDate() throws SQLExceptionこのSQLInputImpl
内の次の属性をjava.sql.Date
オブジェクトとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装に定義されているとおり、UDTマッピングに委譲されます。- 定義:
readDate
、インタフェースSQLInput
- 戻り値:
- この
SQLInputImpl
オブジェクトの次の属性。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合
-
readTime
public Time readTime() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をjava.sql.Time
オブジェクトとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readTime
、インタフェースSQLInput
- 戻り値:
- 属性。値が
SQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readTimestamp
public Timestamp readTimestamp() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をjava.sql.Timestamp
オブジェクトとして取得します。- 定義:
readTimestamp
、インタフェースSQLInput
- 戻り値:
- 属性。値が
SQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readCharacterStream
public Reader readCharacterStream() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をUnicode文字ストリームとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readCharacterStream
、インタフェースSQLInput
- 戻り値:
- 属性。値が
SQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readAsciiStream
public InputStream readAsciiStream() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性をASCII文字ストリームとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readAsciiStream
、インタフェースSQLInput
- 戻り値:
- 属性。値が
SQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readBinaryStream
public InputStream readBinaryStream() throws SQLExceptionこのSQLInputImpl
オブジェクト内の次の属性を未解釈のバイト・ストリームとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readBinaryStream
、インタフェースSQLInput
- 戻り値:
- 属性。値が
SQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readObject
public Object readObject() throws SQLExceptionこのSQLInputImpl
オブジェクトの先頭の値をJavaプログラミング言語のObject
として取得します。 実際に返されるオブジェクトの型は、SQL型とJavaプログラミング言語の型のデフォルト・マッピングによって決定されます。ただし、カスタム・マッピングが存在する場合、返されるオブジェクトの型はこのストリームの型マップによって決定されます。JDBCテクノロジ対応のドライバは、アプリケーションにストリームを渡す前に、このストリームに型マップを登録します。
ストリームの先頭にあるデータがSQL
NULL
の場合、このメソッドはnull
を返します。 データがカスタム・マッピングを持つSQL構造型または個別型である場合、ストリームの先頭のデータのSQL型を判別し、適切なクラスのオブジェクトを構築して、このオブジェクト上でSQLData.readSQL
メソッドを呼び出します。 すると、readSQL
メソッドにより、適切なSQLInputImpl.readXXX
メソッドが呼び出され、ストリームから属性値が取り出されます。- 定義:
readObject
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるJavaプログラミング言語の
Object
としての値。値がSQLNULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readRef
public Ref readRef() throws SQLExceptionこのSQLInputImpl
オブジェクトの先頭の値をJavaプログラミング言語のRef
オブジェクトとして取得します。- 定義:
readRef
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
REF
値を表すRef
オブジェクト。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readBlob
public Blob readBlob() throws SQLExceptionこのSQLInputImpl
オブジェクトの先頭のBLOB
値をJavaプログラミング言語のBlob
オブジェクトとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readBlob
、インタフェースSQLInput
- 戻り値:
- このストリームの先頭にあるSQL
BLOB
値を表すBlob
オブジェクト。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readClob
public Clob readClob() throws SQLExceptionこのSQLInputImpl
オブジェクトの先頭のCLOB
値をJavaプログラミング言語のClob
オブジェクトとして取得します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readClob
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
CLOB
値を表すClob
オブジェクト。値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readArray
public Array readArray() throws SQLExceptionストリームからSQLARRAY
値を読み込み、その値をJavaプログラミング言語のArray
オブジェクトとして返します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readArray
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
ARRAY
値を表すArray
オブジェクト。*値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
wasNull
public boolean wasNull() throws SQLExceptionこのSQLInputImpl
オブジェクトから最後に読み込まれた値がnull
かどうかを確認します。- 定義:
wasNull
、インタフェースSQLInput
- 戻り値:
- 最後に読み込まれたSQL値が
null
の場合はtrue
、そうでない場合はfalse
。デフォルトの戻り値はfalse - 例外:
SQLException
- 最後に読み込まれた値がnull
かどうかを確認中にエラーが発生した場合
-
readURL
public URL readURL() throws SQLExceptionストリームからSQLDATALINK
値を読み込み、その値をJavaプログラミング言語のURL
オブジェクトとして返します。このメソッドは、期待どおりの型が返されるかどうかを判定する型保証(type-safe)されたチェックを行いません。このチェックは、
SQLData
実装のとおり、UDTマッピングに委譲されます。- 定義:
readURL
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
DATALINK
値を表すURL
オブジェクト。*値がSQL NULL
の場合はnull
- 例外:
SQLException
- 読取り位置が無効である場合、またはストリーム内にこれ以上値がない場合。
-
readNClob
public NClob readNClob() throws SQLExceptionストリームからSQLNCLOB
値を読み込み、その値をJavaプログラミング言語のClob
オブジェクトとして返します。- 定義:
readNClob
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
NCLOB
値のデータを表すNClob
オブジェクト。読み込まれた値がSQLNULL
の場合はnull
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合- 導入されたバージョン:
- 1.6
-
readNString
public String readNString() throws SQLExceptionストリーム内の次の属性を読み込み、それをJavaプログラミング言語のString
として返します。NCHAR
、NVARCHAR
、およびLONGNVARCHAR
列にアクセスするときに使用します。- 定義:
readNString
、インタフェースSQLInput
- 戻り値:
- 属性。値がSQL
NULL
の場合はnull
を返す - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合- 導入されたバージョン:
- 1.6
-
readSQLXML
public SQLXML readSQLXML() throws SQLExceptionストリームからSQLXML
値を読み込み、その値をJavaプログラミング言語のSQLXML
オブジェクトとして返します。- 定義:
readSQLXML
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
XML
値のデータを表すSQLXML
オブジェクト。読み込まれた値がSQLNULL
の場合はnull
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合- 導入されたバージョン:
- 1.6
-
readRowId
public RowId readRowId() throws SQLExceptionストリームからSQLROWID
値を読み込み、その値をJavaプログラミング言語のRowId
オブジェクトとして返します。- 定義:
readRowId
、インタフェースSQLInput
- 戻り値:
- ストリームの先頭にあるSQL
ROWID
値のデータを表すRowId
オブジェクト。読み込まれた値がSQLNULL
の場合はnull
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合- 導入されたバージョン:
- 1.6
-