用途
前提条件
ユーザー定義のデータ型は、埋込み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 ...
関連項目