Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU -
目次 索引 前ページ次ページ

第3章 アプリケーションの作成> 3.1 SQL埋込みCプログラムの作成方法

3.1.10 BLOB型のコンパイル時の展開方法

ここでは、BLOB型をSQL上で指定する方法について説明します。ホスト変数は、BLOB型を持つ列に代入する値として指定することができます。

ホスト変数は、以下の形式でホストプログラム内に定義する必要があります。

SQL  TYPE  IS  BLOB(<長さ><単位>)  変数名;

<長さ>:以下の範囲の任意の整数を設定
          単位がK の場合:1 〜 2097152
          単位がM の場合:1 〜 2048
          単位がG の場合:1 〜 2
<単位>:K(キロバイト)、M(メガバイト)、G(ギガバイト)

ただし、コンパイル時には、以下のような構造体形式に変換します。Cプログラムは、変換された構造体の変数でデータ操作を行います。

BLOB型の詳細については、“SQLリファレンス”を参照してください。

[32ビットで実行するSQL埋込みCプログラムをコンパイルする場合]

アプリケーション中に以下のように宣言します。

SQL  TYPE  IS  BLOB  (1K)  area;

                  ↓ コンパイル時に構造体に変換します。

struct{
      long            area_reserved;
      unsigned  long  area_length;
      char            area_data[1024];
}area;

[64ビットで実行するSQL埋込みCプログラムをコンパイルする場合]

アプリケーション中に以下のように宣言します。

SQL  TYPE  IS  BLOB  (1K)  area;

                  ↓ コンパイル時に構造体に変換します。

struct{
      int             area_reserved;
      unsigned  int   area_length;
      char            area_data[1024];
}area;

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007-2008