public interface Clob
CLOB
型のJava(TM)プログラミング言語でのマッピングです。 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
インタフェースのすべてのメソッドが完全に実装される必要があります。
修飾子と型 | メソッド | 説明 |
---|---|---|
void |
free() |
このメソッドは、
Clob オブジェクトを解放して、保持されているリソースを解放します。 |
InputStream |
getAsciiStream() |
この
Clob オブジェクトによって指定されたCLOB 値をASCIIストリームとして取得します。 |
Reader |
getCharacterStream() |
この
Clob オブジェクトによって指定されたCLOB 値をjava.io.Reader オブジェクト(または文字のストリーム)として取り出します。 |
Reader |
getCharacterStream(long pos, long length) |
Clob 値の一部(文字位置posから長さlength文字分)を格納したReader オブジェクトを返します。 |
String |
getSubString(long pos, int length) |
この
Clob オブジェクトによって指定されたCLOB 値内の指定された部分文字列のコピーを取得します。 |
long |
length() |
この
Clob オブジェクトによって指定されたCLOB 値の文字数を取得します。 |
long |
position(Clob searchstr, long start) |
この
Clob オブジェクト内で、指定されたClob オブジェクトsearchstr が現れる文字位置を取得します。 |
long |
position(String searchstr, long start) |
この
Clob オブジェクトで表されるSQL CLOB 値内で、指定された部分文字列searchstr が現れる文字位置を取得します。 |
OutputStream |
setAsciiStream(long pos) |
この
Clob オブジェクトが表すCLOB 値へのASCII文字の書込みに使用するストリームを取得します。ストリームはpos の位置から開始します。 |
Writer |
setCharacterStream(long pos) |
この
Clob オブジェクトが表すCLOB 値へのUnicode文字のストリームの書込みに使用する、pos の位置のストリームを取得します。 |
int |
setString(long pos, String str) |
この
Clob オブジェクトが指定するCLOB 値へ、指定されたJava String をpos の位置に書き込みます。 |
int |
setString(long pos, String str, int offset, int len) |
str の文字offset から始まるlen 個の文字を、このClob が表すCLOB 値に書き込みます。 |
void |
truncate(long len) |
この
Clob が指定するCLOB 値をlen 文字の長さに切り詰めます。 |
long length() throws SQLException
Clob
オブジェクトによって指定されたCLOB
値の文字数を取得します。CLOB
の長さSQLException
- CLOB
値の長さにアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合String 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ドライバがこのメソッドをサポートしない場合Reader getCharacterStream() throws SQLException
Clob
オブジェクトによって指定されたCLOB
値をjava.io.Reader
オブジェクト(または文字のストリーム)として取り出します。CLOB
データを格納するjava.io.Reader
オブジェクトSQLException
- CLOB
値にアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合setCharacterStream(long)
InputStream getAsciiStream() throws SQLException
Clob
オブジェクトによって指定されたCLOB
値をASCIIストリームとして取得します。CLOB
データを格納するjava.io.InputStream
オブジェクトSQLException
- CLOB
値にアクセスするときにエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合setAsciiStream(long)
long position(String searchstr, long start) throws SQLException
Clob
オブジェクトで表されるSQL CLOB
値内で、指定された部分文字列searchstr
が現れる文字位置を取得します。 検索は、start
の位置から始まります。 searchstr
- 検索対象の部分文字列start
- 検索を開始する位置。最初の位置は1SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合long position(Clob searchstr, long start) throws SQLException
Clob
オブジェクト内で、指定されたClob
オブジェクトsearchstr
が現れる文字位置を取得します。 検索は、start
の位置から始まります。 searchstr
- 検索対象のClob
オブジェクトstart
- 検索を開始する位置。最初の位置は1Clob
オブジェクトが見つかった位置。見つからなかった場合は -1。最初の位置は1SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはstartが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合int setString(long pos, String str) throws SQLException
Clob
オブジェクトが指定するCLOB
値へ、指定されたJava String
をpos
の位置に書き込みます。 この文字列は、pos
の位置から始まるClob
オブジェクトの既存文字を上書きします。 指定された文字列の書込み中にClob
値の終わりに達すると、余分な文字を格納するためにClob
値の長さが増加します。
ノート: pos
に指定された値がCLOB
値のlength+1より大きい場合、動作は未定義です。 JDBCドライバによって、SQLException
をスローするものもあれば、この操作をサポートするものもある可能性があります。
pos
- このClob
オブジェクトが表すCLOB
値への書込みを開始する位置。最初の位置は1str
- このClob
が指定するCLOB
値へ書き込まれる文字列SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合int setString(long pos, String str, int offset, int len) throws SQLException
str
の文字offset
から始まるlen
個の文字を、このClob
が表すCLOB
値に書き込みます。 この文字列は、pos
の位置から始まるClob
オブジェクトの既存文字を上書きします。 指定された文字列の書込み中にClob
値の終わりに達すると、余分な文字を格納するためにClob
値の長さが増加します。
ノート: pos
に指定された値がCLOB
値のlength+1より大きい場合、動作は未定義です。 JDBCドライバによって、SQLException
をスローするものもあれば、この操作をサポートするものもある可能性があります。
pos
- このCLOB
オブジェクトへの書込みを開始する位置。最初の位置は1str
- このClob
オブジェクトが表すCLOB
値へ書き込まれる文字列offset
- 書き込まれる文字の読込みを開始するstr
へのオフセットlen
- 書き込まれる文字数SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合OutputStream setAsciiStream(long pos) throws SQLException
Clob
オブジェクトが表すCLOB
値へのASCII文字の書込みに使用するストリームを取得します。ストリームはpos
の位置から開始します。 ストリームに書き込まれる文字は、pos
の位置から始まるClob
オブジェクトの既存文字を上書きします。 ストリームへの文字の書込み中にClob
値の終わりに達すると、余分な文字を格納するためにClob
値の長さが増加します。
ノート: pos
に指定された値がCLOB
値のlength+1より大きい場合、動作は未定義です。 JDBCドライバによって、SQLException
をスローするものもあれば、この操作をサポートするものもある可能性があります。
pos
- このCLOB
オブジェクトへの書込みを開始する位置。最初の位置は1SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合getAsciiStream()
Writer setCharacterStream(long pos) throws SQLException
Clob
オブジェクトが表すCLOB
値へのUnicode文字のストリームの書込みに使用する、pos
の位置のストリームを取得します。 ストリームに書き込まれる文字は、pos
の位置から始まるClob
オブジェクトの既存文字を上書きします。 ストリームへの文字の書込み中にClob
値の終わりに達すると、余分な文字を格納するためにClob
値の長さが増加します。
ノート: pos
に指定された値がCLOB
値のlength+1より大きい場合、動作は未定義です。 JDBCドライバによって、SQLException
をスローするものもあれば、この操作をサポートするものもある可能性があります。
pos
- このCLOB
値への書込みを開始する位置。最初の位置は1SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはposが1より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合getCharacterStream()
void truncate(long len) throws SQLException
Clob
が指定するCLOB
値をlen
文字の長さに切り詰めます。
ノート: pos
に指定された値がCLOB
値のlength+1より大きい場合、動作は未定義です。 JDBCドライバによって、SQLException
をスローするものもあれば、この操作をサポートするものもある可能性があります。
len
- CLOB
値が切り詰められる長さ(文字単位)SQLException
- CLOB
値にアクセスするときにエラーが発生した場合、またはlenが0より小さい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合void free() throws SQLException
Clob
オブジェクトを解放して、保持されているリソースを解放します。 free
メソッドが一度呼び出されたあとは、オブジェクトは無効になります。
free
が呼び出されると、free
以外のメソッドを呼び出そうとしても、SQLException
がスローされます。 free
を複数回呼び出した場合、2回目以降のfree
呼出しは何も行わないものとして扱われます。
SQLException
- Clobのリソースの解放時にエラーが発生した場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合Reader getCharacterStream(long pos, long length) throws SQLException
Clob
値の一部(文字位置posから長さlength文字分)を格納したReader
オブジェクトを返します。pos
- 取得する部分値の最初の文字までのオフセット。 Clob内で最初の文字の位置は1 length
- 取得する部分値の長さ(文字数)Clob
値の一部を読み取ることのできるReader
SQLException
- posが1より小さい場合、posがClob
内の文字数より大きい場合、またはpos+lengthがClob
内の文字数より大きい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。