- 既知のすべてのサブインタフェース:
- NClob
- 既知のすべての実装クラス:
- SerialClob
CLOB型のJavaプログラミング言語でのマッピング。 SQLのCLOBは、キャラクタ・ラージ・オブジェクトをデータベース表の行内の列値として格納する組込みの型です。 デフォルトでは、ドライバはSQLのlocator(CLOB)を使用してClobオブジェクトを実装します。つまり、ClobオブジェクトはデータそのものではなくSQL CLOBデータへの論理ポインタを格納します。 Clobオブジェクトは、それが生成されたトランザクションの期間中に有効です。 
 Clobインタフェースは、SQLのCLOB (キャラクタ・ラージ・オブジェクト)値の長さを取得するためのメソッド、クライアントでCLOB値を生成するためのメソッド、およびCLOB値内で部分文字列またはCLOBオブジェクトを検索するためのメソッドを提供します。 ResultSet、CallableStatement、およびPreparedStatementの各インタフェースのメソッド(getClob、setClobなど)を使用すると、プログラマはSQLのCLOB値にアクセスできます。 さらにこのインタフェースはCLOB値を更新するためのメソッドを備えています。 
 
 JDBCドライバがそのデータ型をサポートする場合は、Clobインタフェースのすべてのメソッドが完全に実装される必要があります。
- 導入されたバージョン:
- 1.2
- 
メソッドのサマリー修飾子と型メソッド説明voidfree()このメソッドは、Clobオブジェクトが保持するリソースを解放します。このClobオブジェクトによって指定されたCLOB値をASCIIストリームとして取得します。このClobオブジェクトによって指定されたCLOB値をjava.io.Readerオブジェクト(または文字のストリーム)として取り出します。getCharacterStream(long pos, long length)Clob値の一部(文字位置posから長さlength文字分)を格納したReaderオブジェクトを返します。getSubString(long pos, int length)このClobオブジェクトによって指定されたCLOB値内の指定された部分文字列のコピーを取得します。longlength()このClobオブジェクトによって指定されたCLOB値の文字数を取得します。longこのClobオブジェクトで表されるSQLCLOB値内で、指定された部分文字列searchstrが現れる文字位置を取得します。longこのClobオブジェクト内で、指定されたClobオブジェクトsearchstrが現れる文字位置を取得します。setAsciiStream(long pos)このClobオブジェクトが表すCLOB値へのASCII文字の書込みに使用するストリームを取得します。ストリームはposの位置から開始します。setCharacterStream(long pos)このClobオブジェクトが表すCLOB値へのUnicode文字のストリームの書込みに使用する、posの位置のストリームを取得します。intこのClobオブジェクトが指定するCLOB値へ、指定されたJavaStringをposの位置に書き込みます。intstrの文字offsetから始まるlen個の文字を、このClobが表すCLOB値に書き込みます。voidtruncate(long len)このClobが指定するCLOB値をlen文字の長さに切り詰めます。
- 
メソッドの詳細- 
lengthlong length() throws SQLExceptionこのClobオブジェクトによって指定されたCLOB値の文字数を取得します。- 戻り値:
- 文字数でのCLOBの長さ
- 例外:
- SQLException-- CLOB値の長さにアクセスするときにエラーが発生した場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
getSubStringString getSubString(long pos, int length) throws SQLExceptionこのClobオブジェクトによって指定されたCLOB値内の指定された部分文字列のコピーを取得します。 部分文字列は、posの位置からlengthで指定された数の連続する文字です。- パラメータ:
- pos- 抽出される部分文字列の最初の文字。 最初の文字は位置1
- length- コピーされる連続した文字数。長さの値は、0以上である必要がある
- 戻り値:
- このClobオブジェクトによって指定されたCLOB値内の指定された部分文字列であるString
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合。posが1より小さいか、またはlengthが0より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
getCharacterStreamReader getCharacterStream() throws SQLExceptionこのClobオブジェクトによって指定されたCLOB値をjava.io.Readerオブジェクト(または文字のストリーム)として取り出します。- 戻り値:
- CLOBデータを格納する- java.io.Readerオブジェクト
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
- 関連項目:
- setCharacterStream(long)
 
- 
getAsciiStreamInputStream getAsciiStream() throws SQLExceptionこのClobオブジェクトによって指定されたCLOB値をASCIIストリームとして取得します。- 戻り値:
- CLOBデータを格納する- java.io.InputStreamオブジェクト
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
- 関連項目:
- setAsciiStream(long)
 
- 
positionlong position(String searchstr, long start) throws SQLExceptionこのClobオブジェクトで表されるSQLCLOB値内で、指定された部分文字列searchstrが現れる文字位置を取得します。 検索は、startの位置から始まります。- パラメータ:
- searchstr- 検索対象の部分文字列
- start- 検索を開始する位置。最初の位置は1
- 戻り値:
- 部分文字列が見つかった位置。見つからなかった場合は -1。最初の位置は1
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
positionlong position(Clob searchstr, long start) throws SQLExceptionこのClobオブジェクト内で、指定されたClobオブジェクトsearchstrが現れる文字位置を取得します。 検索は、startの位置から始まります。- パラメータ:
- searchstr- 検索対象の- Clobオブジェクト
- start- 検索を開始する位置。最初の位置は1
- 戻り値:
- Clobオブジェクトが見つかった位置。見つからなかった場合は -1。最初の位置は1
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはstartが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.2
 
- 
setStringint setString(long pos, String str) throws SQLExceptionこのClobオブジェクトが指定するCLOB値へ、指定されたJavaStringをposの位置に書き込みます。 この文字列は、posの位置から始まるClobオブジェクトの既存文字を上書きします。 指定された文字列の書込み中にClob値の終わりに達すると、余分な文字を格納するためにClob値の長さが増加します。ノート: posに指定された値がCLOB値の長さ+ 1より大きい場合、その動作は未定義です。 JDBCドライバの中には、SQLExceptionをスローするものもあれば、他のドライバがこの操作をサポートしているものもあります。- パラメータ:
- pos- この- Clobオブジェクトが表す- CLOB値への書き込みを開始する位置。最初の位置は1です。
- str- この- Clobが指定する- CLOB値へ書き込まれる文字列
- 戻り値:
- 書き込まれる文字数
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
 
- 
setStringint setString(long pos, String str, int offset, int len) throws SQLExceptionstrの文字offsetから始まるlen個の文字を、このClobが表すCLOB値に書き込みます。 この文字列は、posの位置から始まるClobオブジェクトの既存文字を上書きします。 指定された文字列の書込み中にClob値の終わりに達すると、余分な文字を格納するためにClob値の長さが増加します。ノート: posに指定された値がCLOB値の長さ+ 1より大きい場合、その動作は未定義です。 JDBCドライバの中には、SQLExceptionをスローするものもあれば、他のドライバがこの操作をサポートしているものもあります。- パラメータ:
- pos- この- CLOBオブジェクトへの書込みを開始する位置。最初の位置は1
- str- この- Clobオブジェクトが表す- CLOB値へ書き込まれる文字列
- offset- 書き込まれる文字の読込みを開始する- strへのオフセット
- len- 書き込まれる文字数
- 戻り値:
- 書き込まれる文字数
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
 
- 
setAsciiStreamOutputStream setAsciiStream(long pos) throws SQLExceptionこのClobオブジェクトが表すCLOB値へのASCII文字の書込みに使用するストリームを取得します。ストリームはposの位置から開始します。 ストリームに書き込まれる文字は、posの位置から始まるClobオブジェクトの既存文字を上書きします。 ストリームへの文字の書込み中にClob値の終わりに達すると、余分な文字を格納するためにClob値の長さが増加します。ノート: posに指定された値がCLOB値の長さ+ 1より大きい場合、その動作は未定義です。 JDBCドライバの中には、SQLExceptionをスローするものもあれば、他のドライバがこの操作をサポートしているものもあります。- パラメータ:
- pos- この- CLOBオブジェクトへの書込みを開始する位置。最初の位置は1
- 戻り値:
- ASCII符号化文字が書き込まれるストリーム
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- getAsciiStream()
 
- 
setCharacterStreamWriter setCharacterStream(long pos) throws SQLExceptionこのClobオブジェクトが表すCLOB値へのUnicode文字のストリームの書込みに使用する、posの位置のストリームを取得します。 ストリームに書き込まれる文字は、posの位置から始まるClobオブジェクトの既存文字を上書きします。 ストリームへの文字の書込み中にClob値の終わりに達すると、余分な文字を格納するためにClob値の長さが増加します。ノート: posに指定された値がCLOB値の長さ+ 1より大きい場合、その動作は未定義です。 JDBCドライバの中には、SQLExceptionをスローするものもあれば、他のドライバがこの操作をサポートしているものもあります。- パラメータ:
- pos- この- CLOB値への書込みを開始する位置。最初の位置は1
- 戻り値:
- Unicode符号化文字が書き込まれるストリーム
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
- 関連項目:
- getCharacterStream()
 
- 
truncatevoid truncate(long len) throws SQLExceptionこのClobが指定するCLOB値をlen文字の長さに切り詰めます。ノート: posに指定された値がCLOB値の長さ+ 1より大きい場合、その動作は未定義です。 JDBCドライバの中には、SQLExceptionをスローするものもあれば、他のドライバがこの操作をサポートしているものもあります。- パラメータ:
- len-- CLOB値が切り詰められる長さ(文字単位)
- 例外:
- SQLException-- CLOB値にアクセスするときにエラーが発生した場合、またはlenが0より小さい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.4
 
- 
freevoid free() throws SQLExceptionこのメソッドは、Clobオブジェクトが保持するリソースを解放します。freeメソッドが一度呼び出されたあとは、オブジェクトは無効になります。freeが呼び出されると、free以外のメソッドを呼び出そうとしても、SQLExceptionがスローされます。freeを複数回呼び出した場合、2回目以降のfree呼出しは何も行わないものとして扱われます。- 例外:
- SQLException- Clobのリソースの解放時にエラーが発生した場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
- 
getCharacterStreamReader getCharacterStream(long pos, long length) throws SQLExceptionClob値の一部(文字位置posから長さlength文字分)を格納したReaderオブジェクトを返します。- パラメータ:
- pos- 取得する部分値の最初の文字までのオフセット。 Clob内で最初の文字の位置は1
- length- 取得する部分値の長さ(文字数)
- 戻り値:
- Clob値の一部を読み取ることのできる- Reader
- 例外:
- SQLException- posが1より小さい場合またはposが- Clobの文字数より大きい場合またはpos + lengthが- Clobの文字数より大きい場合
- SQLFeatureNotSupportedException- JDBCドライバがこのメソッドをサポートしない場合
- 導入されたバージョン:
- 1.6
 
 
-