プライマリ・コンテンツに移動
Pro*C/C++プログラマーズ・ガイド
12c リリース1(12.1)
B71397-03
目次へ移動
目次
索引へ移動
索引

前
次

TYPE(Oracle埋込みSQLディレクティブ)

用途

ユーザー定義型の同値化を行うか、外部データ型をユーザー定義のデータ型に同値化することで、外部データ型をホスト変数のクラス全体に割り当てます。

前提条件

ユーザー定義のデータ型は、埋込みSQLプログラムで事前に宣言する必要があります。

構文

キーワードおよびパラメータ

キーワードおよびパラメータ 説明

type

外部データ型と同値化するユーザー定義データ型。

datatype

プリコンパイラによって認識される内部データ型ではない外部データ型。データ型には、長さ、精度または位取りを含めることができます。この外部データ型は、ユーザー定義型と同値化された後に、型が割り当てられているホスト変数すべてに割り当てられます。外部データ型のリストは、Oracleのデータ型を参照してください。

REFERENCE

同値化した型をポインタ型にします。

使用上の注意

ユーザー定義型の同値化は、データ型の同値化の一種です。Pro*C/C++プログラムでは、ユーザー定義型を同値化するには、埋込みSQLのTYPE文を使用する必要があります。データ型の同値化は、次のいずれかの目的で使用します。

  • 文字ホスト変数を自動的にヌル文字で終了します。

  • プログラム・データをバイナリ・データとしてデータベースに格納します。

  • デフォルトのデータ型のかわりに使用します。

Pro*C/C++では、VARCHARおよびVARRAW配列がワード整列されているものとみなされます。配列型をVARCHARまたはVARRAWデータ型に同値化する場合は、長さ+2が4で割り切れる数になっていることを確認してください。

Pro*C/C++では、ホスト変数の同値化のための埋込みSQL VAR文もサポートされています。詳細は、ユーザー定義型同値化を参照してください。

例1

この例では、Pro*C/C++のプリコンパイラ・プログラムにおける埋込みSQL TYPE文を示します。

struct screen {
    short len; 
    char  buff[4002];
}; 

typedef struct screen graphics; 

    EXEC SQL TYPE graphics IS VARRAW(4002); 
    graphics crt;  -- host variable of type graphics 
    ... 

関連項目