1.1.17 BLOB

BLOBは最大長が定義されていない可変長のバイナリー・フィールドです。

BLOBを使用する操作で最も一般的なものは、データベースへのファイルの保存やファイルの取得です。これでファイルの表示/編集などができるようになります。RDMLやRDMLXでは、BLOBフィールドはファイル名として処理されます。

次はJPGファイルをBLOBに保存する例です。

#MYBLOB := 'C:\temp\mypicture.jpg'

UPDATE FIELDS(#MYBLOB) IN_FILE(FILE1)

 

一般的な事柄については、「1.1.1 フィールド・タイプについて」を参照してください。

フィールド定義の規則

BLOBをリポジトリに定義するときの規則は以下のとおりです。

長さ

長さ指定は不可です。小数はありません。

有効な鍵盤シフト

ブランク

許容される属性

AB、ASQN、CS、FE、LC、ND、RA、RL、RLTB

注:LCとASQNは必ず定義する必要があります。削除はできません。

編集オプション

不可

デフォルト

*SQLNULL。デフォルトでASQNが有効になります。

フィールド定義の注意事項

使用規則

区画タイプ

RDMLX使用可能区画

ファイル

BLOBはRDMLXファイルでのみ使用することができます。BLOBフィールドは実フィールドとして使用することができます。BLOBはキー・フィールドとして使用してはいけません。

論理ビュー

BLOBはキー・フィールドとして使用できません。

仮想フィールド

適用不可

事前結合フィールド

適用不可

RDML コマンド

BLOBまたはCLOBフィールドを使用する場合、そのフィールドにはファイル名が含まれています。オブジェクトの実データではないので注意してください。RDMLやRDMLXでは、LANSA LOBフィールドはファイル名として処理されます。指名ファイルの読み書きによりBLOBまたはCLOBの実データそのものを処理するのは、データベースI/Oコマンドだけです。

組み込み関数

BLOBを組み込み関数で使用する場合、BLOBは独自のタイプに分類されるので数値または英数字の引数には無効です。

特殊値

*SQLNULL、*NAVAIL、*REMEMBERED_VALUE、*EMPTY

変換

BLOBはファイル・ポインターとして扱われます。数値や日付/時間フィールド・タイプへの変換はサポートされていません。詳細については、「フィールド・タイプ変換」を参照してください。

使用に関する注意事項

プラットフォームについて

ヒントとテクニック

次のトピックも参照してください。

1.1.18 CLOB