通常使用するプリミティブ
このトピックでは、使用されることの多いプリミティブをリストして、説明を 行います。
ここでは、すべてのプリミティブをリストしているわけではありません。完全なリストについては、プリミティブ・データ型を参照してください。
プリミティブ数値型
最も一般的な数値プリミティブは、INT、DECIMAL、および FLOAT です。
- INT
- 基本的な 4 バイト整数は、内部計算に一般に使用されます。 INT は、キー番号や在庫数など、整数が適している場所であれば、どこでも使用できます。INT に入れることができる値の範囲は、-2,147,483,648 から +2,147,483,647 まで です。
- DECIMAL
- 通貨量や労働時間 (小数部を許可する場合) などのように、小数点が必要なあらゆる数字に小数部を使用します。この型の変数を宣言するときには、
長さ (バイトではなく桁で) および小数点以下の桁数を指定してください。変数の値が絶対に 1000 万ドル以上にならないと分かっている場合、次のように変数を宣言することが可能です。
mySalary DECIMAL(9,2) = 30000.00; - FLOAT
- この型の変数の長さは 8 バイト、すなわち倍精度になります。
これの反対が、単精度の浮動小数点数 (長さは 4 バイト) になります。
FLOAT 変数は、指数を使用する数値を格納します。したがって、8 バイトという長さを使って、非常に大きい数値を保持できるようになっています。通常、FLOAT 変数を使って格納する数値は、非常に大きな数値に限られます。割り当てることができるのは、通常の 10 進表記の値か、または指数表記の値です (FLOAT 変数による値は、非常に大きくすることができるため)。この場合、e という表記で 10 の累乗を表します。
2.998e8 は、2.998 x 108 を意味します。speedOfLight FLOAT = 299800000; speedOfLight FLOAT = 2.998e8;
プリミティブ文字型
最もよく使われる文字プリミティブは、STRING と CHAR です。
- STRING
- STRING 変数は、名前やアドレスなどの文字グループを保持します。
EGL は、自動的にすべての文字列を Unicode に変換します。つまり、各文字が 2 バイト長になり、Unicode 標準がレンダリングできる国際言語であれば処理できます。STRING 変数は、デフォルトでは長さを扱う変数になります。
STRING の長さは、常にそれが保持するデータの長さを表します。
その長さは、実行時に変化することがあります。
STRING 変数を使用する際に、変数のサイズを制限することもできます。
STRING 変数の長さを制限するには、その宣言時に、文字の最大数 (バイト数ではない) を
指定します。以下の例を参照してください。
STRING 値を割り当てるときは、必ず二重引用符で囲んでください。myUSState STRING(2) = "TX"; - CHAR
- CHAR プリミティブは、通常、以前のプログラムやデータとの互換性を提供します。CHAR(4) と宣言された変数は、4 バイトの文字データを保持します。
プリミティブ日付と時刻型
最も一般的な日時プリミティブは、DATE、TIME、および TIMESTAMP です。
- DATE
- DATE 変数は、グレゴリオ暦の形式で月、日、年を保存します (8 バイト)。
- TIME
- TIME 変数は、時間、分、および秒を保存します (6 バイト)。
- TIMESTAMP
- TIMESTAMP 変数は、日付と時刻の両方を保持します (最長 20 桁)。
これらの日付と時刻型に基づく変数の場合は、入出力の形式を指定できます。 詳しくは、日付/時刻マスクとフォーマット指定子を参照してください。
プリミティブ・ラージ・オブジェクト型
ラージ・オブジェクト型は、不定形式データを保管します。
EGL は、それらのデータを変更せずに受け渡します。一般にはデータをデータベース内に取り込んで保存するか、またはデータをデータベースから取り込んで、データを表示できるプログラムに転送します。ラージ・オブジェクト・プリミティブには次の 2 種類があります。
- BLOB
- 通常、BLOB (バイナリー・ラージ・オブジェクト) 変数は、JPG やムービーなどのビジュアル・データを保存する際に使用します。例えば、ムービーを販売する Web サイトでは、 短い予告編を BLOB としてデータベースに保存して、 顧客からのリクエストに応じて提供することができます。
- CLOB
- CLOB (文字ラージ・オブジェクト) 変数は、文字データを保存する際に使用します。例えば、ある会社でデータベースを使用して電子メールを CLOB として保存するというケースが考えられます。