LONG VARCHAR および LONG VARGRAPHIC データ・タイプの記憶域限界は、32K バイトです。これは普通サイズ以下のテキスト・データには十分ですが、アプリケーションでは大きなテキスト・ドキュメントを保管しなければならない場合がよくあります。また他にも音声、ビデオ、図面、テキストと図形処理の混合したもの、イメージなど、さまざまなデータ・タイプを保管しなければならない場合もあります。 DB2 は、このようなデータ・オブジェクトを 2 ギガバイト (GB) 以下のサイズのストリングとして保管する 3 つのデータ・タイプを備えています。その 3 つのデータ・タイプとは、2 進ラージ・オブジェクト (BLOB)、単一バイト文字ラージ・オブジェクト (CLOB)、および 2 バイト文字ラージ・オブジェクト (DBCLOB) です。
ラージ・オブジェクト (LOB) の保管だけでなく、データベース中の各 LOB を参照したり、それを使用したり修正したりする方法も必要です。 DB2 の各表には、関連する LOB データが大量に含まれている場合があります。この場合、1 つの LOB 値は 2 ギガバイトより大きくなることはありませんが、 LOB データは 1 行当たり 24 ギガバイト、1 表当たり 4 テラバイトまでとなります。特別な行の LOB 列中には、どの時点でも ラージ・オブジェクト値 が含まれます。
LOB は、他のデータ・タイプの場合と同様にホスト変数を使用して参照および操作することができます。ただしホスト変数が使用するクライアント・メモリーのバッファーが、 LOB 値を保留するのに不十分な場合もあります。このような大きな値の操作は、他の方法で行わなければなりません。 ロケーター は、データベース・サーバーでラージ・オブジェクト値を識別および操作したり、特定の LOB 値を抽出する場合に使用すると便利です。 ファイル参照変数 は、ラージ・オブジェクト (またはその大部分) をクライアント間で物理的に移動する場合に使用すると便利です。
注: | DB2 は、JDBC および SQLJ アプリケーションに対する LOB サポートを提供しています。 Java アプリケーションでの LOB の使用の詳細については、 JDBC 2.0 を参照してください。 |
次の項では、上記のトピックについて詳しく説明します。