- 既知のすべてのサブインタフェース:
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
-
メソッドのサマリー
修飾子と型メソッド説明void
free()
このメソッドは、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
値内の指定された部分文字列のコピーを取得します。long
length()
この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
の位置に書き込みます。int
str
の文字offset
から始まるlen
個の文字を、このClob
が表すCLOB
値に書き込みます。void
truncate
(long len) このClob
が指定するCLOB
値をlen
文字の長さに切り詰めます。
-
メソッドの詳細
-
length
long length() throws SQLExceptionこのClob
オブジェクトによって指定されたCLOB
値の文字数を取得します。- 戻り値:
- 文字数での
CLOB
の長さ - 例外:
SQLException
-CLOB
値の長さにアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
-
getSubString
このClob
オブジェクトによって指定されたCLOB
値内の指定された部分文字列のコピーを取得します。 部分文字列は、pos
の位置からlength
で指定された数の連続する文字です。- パラメータ:
pos
- 抽出される部分文字列の最初の文字。 最初の文字は位置1length
- コピーされる連続した文字数。長さの値は、0以上である必要がある- 戻り値:
- この
Clob
オブジェクトによって指定されたCLOB
値内の指定された部分文字列であるString
- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合。posが1より小さいか、またはlengthが0より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
-
getCharacterStream
Reader getCharacterStream() throws SQLExceptionこのClob
オブジェクトによって指定されたCLOB
値をjava.io.Reader
オブジェクト(または文字のストリーム)として取り出します。- 戻り値:
CLOB
データを格納するjava.io.Reader
オブジェクト- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
- 関連項目:
-
getAsciiStream
InputStream getAsciiStream() throws SQLExceptionこのClob
オブジェクトによって指定されたCLOB
値をASCIIストリームとして取得します。- 戻り値:
CLOB
データを格納するjava.io.InputStream
オブジェクト- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
- 関連項目:
-
position
long position(String searchstr, long start) throws SQLException このClob
オブジェクトで表されるSQLCLOB
値内で、指定された部分文字列searchstr
が現れる文字位置を取得します。 検索は、start
の位置から始まります。- パラメータ:
searchstr
- 検索対象の部分文字列start
- 検索を開始する位置。最初の位置は1- 戻り値:
- 部分文字列が見つかった位置。見つからなかった場合は -1。最初の位置は1
- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.2
-
position
long 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
-
setString
int 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
-
setString
int setString(long pos, String str, int offset, int len) throws SQLException str
の文字offset
から始まるlen
個の文字を、このClob
が表すCLOB
値に書き込みます。 この文字列は、pos
の位置から始まるClob
オブジェクトの既存文字を上書きします。 指定された文字列の書込み中にClob
値の終わりに達すると、余分な文字を格納するためにClob
値の長さが増加します。ノート:
pos
に指定された値がCLOB
値の長さ+1より大きい場合、動作は未定義です。 一部のJDBCドライバはSQLException
をスローし、他のドライバはこの操作をサポートする場合があります。- パラメータ:
pos
- このCLOB
オブジェクトへの書込みを開始する位置。最初の位置は1str
- このClob
オブジェクトが表すCLOB
値へ書き込まれる文字列offset
- 書き込まれる文字の読込みを開始するstr
へのオフセットlen
- 書き込まれる文字数- 戻り値:
- 書き込まれる文字数
- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
setAsciiStream
この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
- 関連項目:
-
setCharacterStream
この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
- 関連項目:
-
truncate
void truncate(long len) throws SQLException このClob
が指定するCLOB
値をlen
文字の長さに切り詰めます。ノート:
pos
に指定された値がCLOB
値の長さ+1より大きい場合、動作は未定義です。 一部のJDBCドライバはSQLException
をスローし、他のドライバはこの操作をサポートする場合があります。- パラメータ:
len
-CLOB
値が切り詰められる長さ(文字単位)- 例外:
SQLException
-CLOB
値にアクセスするときにエラーが発生した場合、またはlenが0より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.4
-
free
void free() throws SQLExceptionこのメソッドは、Clob
オブジェクトが保持するリソースを解放します。free
メソッドが一度呼び出されたあとは、オブジェクトは無効になります。free
が呼び出されると、free
以外のメソッドを呼び出そうとしても、SQLException
がスローされます。free
を複数回呼び出した場合、2回目以降のfree
呼出しは何も行わないものとして扱われます。- 例外:
SQLException
- Clobのリソースの解放時にエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.6
-
getCharacterStream
Clob
値の一部(文字位置posから長さlength文字分)を格納したReader
オブジェクトを返します。- パラメータ:
pos
- 取得する部分値の最初の文字までのオフセット。 Clob内で最初の文字の位置は1length
- 取得する部分値の長さ(文字数)- 戻り値:
Clob
値の一部を読み取ることのできるReader
- 例外:
SQLException
- posが1より小さい場合またはposがClob
の文字数より大きい場合またはpos + lengthがClob
の文字数より大きい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合- 導入されたバージョン:
- 1.6
-