目次 前項目  次項目

2.4 データタイプ

InterBaseでは、フィールドのデータタイプとして以下のものを定義することが できます。
データタイプ サイズ 制限 説明
BLOB 可変長 なし バイナリデータやテキストデータなど、どのようなデータでも格納する ことができます。オプションとして「SUB_TYPE」に続けて、サブタイプを 表す整数値を指定することができます。あらかじめ定義されているサブ タイプは2つだけで、0がバイナリデータ、1がテキストデータを表し ます。ユーザが自由に使えるサブタイプは、負の整数値で、BLOb フィルターを使用する時に定義します。
CHAR(n) n文字 1〜32767バイト 固定長の文字列を格納することができます。nよりも短い文字列を挿入 すると、n文字になるまでスペースが足されます。
DATE 8バイト 西暦100年1月1日〜5941年1月11日 日付と時刻の情報を格納することができます。
DECIMAL(p,s) 可変長 全体の桁数:1〜15、小数点以下の桁数:1〜15 全体の桁数がp、小数点以下の桁数がsの数値を、誤差を含まず格納する ことができます。
DOUBLE PRECISION 8バイト ±1.7×10-308〜±1.7×10308 倍精度の浮動小数点数を格納することができます。
FLOAT 4バイト ±3.4×10-38〜±3.4×1038 単精度の浮動小数点数を格納することができます。
INTEGER 4バイト -2147483648〜2147483647 符号付きの4バイトの整数を格納することができます。
NUMERIC(p,s) 可変長 全体の桁数:1〜15、小数点以下の桁数:1〜15 全体の桁数がp、小数点以下の桁数がsの数値を、誤差を含まず格納する ことができます。
SMALLINT 2バイト -32768〜32767 符号付きの2バイトの整数を格納することができます。
VARCHAR(n) 最大n文字までの可変長 1〜32765バイト 最大n文字までの可変長の文字列を格納することができます。文字列の サイズを表す2バイトの数値と、実際の文字列の情報が格納されます。


【多次元配列】

InterBaseでは、フィールドを最大16次元の配列として定義することができます。 ただし、BLOBフィールドは配列として定義することはできません。

例えば、テーブル「table1」のフィールド「field1」を、CHAR(10)で5つの要素を 持つ1次元配列として定義する場合には、以下のように記述します。
CREATE TABLE table1 ( field1 CHAR(10)[5] ) ;
また、フィールド「field1」と「field2」を、それぞれINTEGERの3次元、4次元の 配列として定義する場合には、以下のように記述します。
CREATE TABLE table1 ( field1 INTEGER[3,2,4],
                                field2 INTEGER[5,3,2,4] ) ;
この例ではfield1、field2は、それぞれ24個、120個の要素を持つことに なります。

配列のデータの最初の要素は、添え字1で参照することができます。ただし、 配列の添え字の範囲を指定することもでき、その場合は以下のように記述します。
CREATE TABLE table1 ( field1 INTEGER[0:2,0:1,0:3] ) ;
この例では、最初の要素が[0,0,0]で、最後の要素が[2,1,3]で参照することの できる3次元配列として定義されます。要素数は24個になります。

目次 前項目  次項目

InterBase for Linux & FreeBSD Copyright(c) 1998 RIOS Corporation