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
- 抽出される部分文字列の最初の文字。最初の文字は位置1length
- コピーされる連続した文字数。長さの値は、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内で最初の文字の位置は1length
- 取得する部分値の長さ(文字数)Clob
値の一部を読み取ることのできるReader
SQLException
- posが1より小さい場合、posがClob
内の文字数より大きい場合、またはpos+lengthがClob
内の文字数より大きい場合SQLFeatureNotSupportedException
- JDBCドライバがこのメソッドをサポートしない場合 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.