JavaTM Platform
Standard Ed. 6

java.sql
インタフェース Clob

既知のサブインタフェースの一覧:
NClob
既知の実装クラスの一覧:
SerialClob

public interface Clob

SQL CLOB の型の JavaTM プログラミング言語でのマッピングです。SQL の CLOB は、文字ラージオブジェクトをデータベース表の行内の列値として格納する組み込みの型です。デフォルトでは、ドライバは SQL の locator(CLOB) を使用して Clob オブジェクトを実装します。つまり、Clob オブジェクトはデータそのものではなく SQL Clob データへの論理ポインタを格納します。Clob オブジェクトは、それが生成されたトランザクションの期間中に有効です。 

Clob インタフェースは、SQL の CLOB (キャラクタラージオブジェクト) 値の長さを取得するためのメソッド、クライアントで CLOB 値を生成するためのメソッド、および CLOB 値内で部分文字列または CLOB オブジェクトを検索するためのメソッドを提供します。ResultSetCallableStatementPreparedStatement の各インタフェースのメソッド (getClob および setClob など) を使用すると、プログラマは SQL の CLOB 値にアクセスできます。さらにこのインタフェースは CLOB 値を更新するためのメソッドを備えています。

JDBC ドライバがそのデータ型をサポートする場合は、Clob インタフェースのすべてのメソッドが完全に実装される必要があります。

導入されたバージョン:
1.2

メソッドの概要
 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 文字を書き込むために使用するストリームを取得します。
 Writer setCharacterStream(long pos)
          この Clob オブジェクトが表す CLOB 値へ Unicode 文字を書き込むために使用するストリームを取得します。
 int setString(long pos, String str)
          この Clob オブジェクトが指定する CLOB 値へ指定された Java Stringpos の位置に書き込みます。
 int setString(long pos, String str, int offset, int len)
          この Clob が表す CLOB 値へ、offset 文字から始まる strlen 文字を書き込みます。
 void truncate(long len)
          この Clob が指定する CLOB 値を len 文字の長さに切り詰めます。
 

メソッドの詳細

length

long length()
            throws SQLException
この Clob オブジェクトによって指定された CLOB 値の文字数を取得します。

戻り値:
文字数での CLOB の長さ
例外:
SQLException - CLOB 値の長さにアクセスするときにエラーが発生した場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.2

getSubString

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 ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.2

getCharacterStream

Reader getCharacterStream()
                          throws SQLException
この Clob オブジェクトによって指定された CLOB 値を java.io.Reader オブジェクト (または文字のストリーム) として取り出します。

戻り値:
CLOB データを格納する java.io.Reader オブジェクト
例外:
SQLException - CLOB 値にアクセスするときにエラーが発生した場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.2
関連項目:
setCharacterStream(long)

getAsciiStream

InputStream getAsciiStream()
                           throws SQLException
この Clob オブジェクトによって指定された CLOB 値を ASCII ストリームとして取り出します。

戻り値:
CLOB データを格納する java.io.InputStream オブジェクト
例外:
SQLException - CLOB 値にアクセスするときにエラーが発生した場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.2
関連項目:
setAsciiStream(long)

position

long position(String searchstr,
              long start)
              throws SQLException
この Clob オブジェクトで表される SQL CLOB 値内で、指定された部分文字列 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 値へ指定された Java Stringpos の位置に書き込みます。この文字列は、pos の位置から始まる Clob オブジェクトの既存文字を上書きします。指定された文字列への書き込み中に Clob 値の終わりに達すると、余分な文字を格納するために Clob 値の長さが増加します。

注:pos に指定された値が CLOB 値の length + 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
この Clob が表す CLOB 値へ、offset 文字から始まる strlen 文字を書き込みます。この文字列は、pos の位置から始まる Clob オブジェクトの既存文字を上書きします。指定された文字列への書き込み中に Clob 値の終わりに達すると、余分な文字を格納するために Clob 値の長さが増加します。

注:pos に指定された値が CLOB 値の length + 1 より大きい場合、動作は未定義です。JDBC ドライバによって、SQLException をスローするものもあれば、この操作をサポートするものもある可能性があります。

パラメータ:
pos - この CLOB オブジェクトへの書き込みを開始する位置。最初の位置は 1
str - この Clob オブジェクトが表す CLOB 値へ書き込まれる文字列
offset - 書き込まれる文字の読み込みを開始する str へのオフセット
len - 書き込まれる文字数
戻り値:
書き込まれる文字数
例外:
SQLException - CLOB 値にアクセスするときにエラーが発生した場合、または pos が 1 より小さい場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.4

setAsciiStream

OutputStream setAsciiStream(long pos)
                            throws SQLException
この Clob オブジェクトが表す CLOB 値へ ASCII 文字を書き込むために使用するストリームを取得します。ストリームは pos の位置から開始します。ストリームに書き込まれる文字は、pos の位置から始まる Clob オブジェクトの既存文字を上書きします。ストリームへの文字の書き込み中に Clob 値の終わりに達すると、余分な文字を格納するために Clob 値の長さが増加します。

注:pos に指定された値が CLOB 値の length + 1 より大きい場合、動作は未定義です。JDBC ドライバによって、SQLException をスローするものもあれば、この操作をサポートするものもある可能性があります。

パラメータ:
pos - この CLOB オブジェクトへの書き込みを開始する位置。最初の位置は 1
戻り値:
ASCII 符号化文字が書き込まれるストリーム
例外:
SQLException - CLOB 値にアクセスするときにエラーが発生した場合、または pos が 1 より小さい場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.4
関連項目:
getAsciiStream()

setCharacterStream

Writer setCharacterStream(long pos)
                          throws SQLException
この Clob オブジェクトが表す CLOB 値へ Unicode 文字を書き込むために使用するストリームを取得します。ストリームは pos の位置から開始します。ストリームに書き込まれる文字は、pos の位置から始まる Clob オブジェクトの既存文字を上書きします。ストリームへの文字の書き込み中に Clob 値の終わりに達すると、余分な文字を格納するために Clob 値の長さが増加します。

注:pos に指定された値が CLOB 値の length + 1 より大きい場合、動作は未定義です。JDBC ドライバによって、SQLException をスローするものもあれば、この操作をサポートするものもある可能性があります。

パラメータ:
pos - この CLOB オブジェクトへの書き込みを開始する位置。最初の位置は 1
戻り値:
Unicode 符号化文字が書き込まれるストリーム
例外:
SQLException - CLOB 値にアクセスするときにエラーが発生した場合、または pos が 1 より小さい場合
SQLFeatureNotSupportedException - JDBC ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.4
関連項目:
getCharacterStream()

truncate

void truncate(long len)
              throws SQLException
この Clob が指定する CLOB 値を len 文字の長さに切り詰めます。

注:pos に指定された値が CLOB 値の length + 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

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 ドライバがこのメソッドをサポートしない場合
導入されたバージョン:
1.6

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。