BLOB

BLOB 関数は、任意のタイプのストリングの BLOB 表現を戻します。

構文図を読む構文図をスキップする
>>-BLOB--(--string-expression--+------------+--)---------------><
                               '-,--integer-'      

string-expression
値が文字ストリング、グラフィック・ストリング、2 進ストリング、または行 ID のいずれか であるストリング式
integer
結果の 2 進ストリングの長さ属性を指定する整数定数。 値 は 1 から 2 147 483 647 でなければなりません。

整数 を指定しなかった場合は、以下のようになります。

  • ストリング式 が空ストリング定数の場合は、結果の長さ属性は 1。
  • 空ストリング定数以外の場合は、最初の引数が漢字ストリングでなければ、 結果の長さ属性は最初の引数の長さ属性と同じになる。 グラフィック・ストリングの場合は、結果の長さ属性は、引数の長さ属性の 2 倍です。

結果の実際の長さは、結果の長さ属性と式の実際の長さ (または入力がグラフィック・データの場合は式の長さの 2 倍) のいずれか小さい方となります。 ストリング式 の長さが結果の長さ属性よりも大 きい場合は、切り捨てが行われます。 最初の入力引数が文字ストリングで、切り捨てられた文字がすべて ブランクである場合、最初の入力引数がグラフィック・ストリングで、 切り捨てられた文字がすべて 2 バイト・ブランクである場合、 または最初の入力引数が 2 バイト・ストリングで、 切り捨てられたバイトがすべて 16 進数のゼロである場合以外は、警告 (SQLSTATE 01004) が戻されます。

この関数の結果は、BLOB になります。最初の引数がヌルである可能性がある場合は、結果もヌルになる可能性があります。最初の引数がヌルの場合は、結果は NULL 値になります。

注記

代替構文: 長さを指定する場合、アプリケーションの移植性を拡張するには、CAST 指定を使用します。 詳しくは、CAST の指定を参照してください。

  • 次の関数は、ストリング「This is a BLOB」の BLOB を戻します。
      SELECT BLOB('This is a BLOB')
        FROM SYSIBM.SYSDUMMY1
  • 次の関数は、ロケーター myclob_locator が識別するラージ・ オブジェクトの BLOB を戻します。
      SELECT BLOB(:myclob_locator)
        FROM SYSIBM.SYSDUMMY1
  • 表に、TOPOGRAPHIC_MAP という名前の BLOB 列と、MAP_NAME という名前の VARCHAR があるとします。 「Pellow Island」というストリングが入っているマップを見つけ、実際のマップの前にマップ名を連結した単一 2 進ストリングを戻すことにします。 次の関数は、ロケーター myclob_locator が識別するラージ・ オブジェクトの BLOB を戻します。
      SELECT BLOB( MAP_NAME CONCAT  ':  ' CONCAT  TOPOGRAPHIC_MAP )
        FROM ONTARIO_SERIES_4
        WHERE TOPOGRAPHIC_MAP LIKE '%Pellow Island%'