一般的なデータ型クラス
ここでは、InterSystems IRIS データ型クラスの概要について説明します。各データ型クラスは、いくつかのキーワードを指定します。これらのキーワードにより、InterSystems SQL でのデータ型の使用方法や、クライアント・システムでのデータ型の投影方法を制御します。
プロパティ定義で使用するデータ型を選択する際には、ニーズに応じた適切なクライアント・プロジェクションを持つクラスを選択する必要があります (該当する場合)。適切なクラスがない場合、"データ型クラスの定義" で説明するように、独自のデータ型クラスを作成できます。
概要
最も一般的に使用されるデータ型クラスは、以下のとおりです。
クラス名 | 保持する値 | 注 |
---|---|---|
%BigIntOpens in a new tab | 64 ビットの整数 | このクラスは %IntegerOpens in a new tab と類似しています (OdbcType および ClientDataType を除く)。 |
%BinaryOpens in a new tab | バイナリ・データ | 実際のバイナリ・データを Unicode (またはその他) に変換せずにクライアントへ送信、またはクライアントから受信します。 |
%BooleanOpens in a new tab | ブーリアン値 | 可能な論理値は 0 (false) および 1 (true) です。 |
%CharOpens in a new tab | 固定長の文字フィールド | |
%CounterOpens in a new tab | 整数。固有のカウンタとしての使用を目的としています | タイプ・クラスが %CounterOpens in a new tab のプロパティには、新しいオブジェクトが保存されたとき、または SQL を使用して新しいレコードが挿入されたときに、値が割り当てられます (そのプロパティに値が指定されていない場合)。詳細は、"インターシステムズ・クラス・リファレンス" の "%CounterOpens in a new tab" を参照してください。 |
%CurrencyOpens in a new tab | 通貨値 | このクラスは、Sybase または SQL Server から InterSystems IRIS への移行のためにのみ定義されます。 |
%DateOpens in a new tab | 日付 | 論理値は InterSystems IRIS $HOROLOG 形式になります。 |
%DateTimeOpens in a new tab | 日付と時間 | このクラスは、主に T-SQL の移行と datetime datetime/smalldatetime の動作を %TimeStampOpens in a new tab データ型にマップするために使用されます。この場合、DisplayToLogical() メソッドと OdbcToLogical() メソッドは、T-SQL アプリケーションでサポートされている不正確な datetime 値を処理するロジックを提供します。 |
%DecimalOpens in a new tab | 固定小数点 | 論理値は小数点形式の数です。"インターシステムズ・アプリケーションでの数値の計算" を参照してください。 |
%DoubleOpens in a new tab | IEEE 浮動小数点数 | 論理値は IEEE 浮動小数点数です。"インターシステムズ・アプリケーションでの数値の計算" を参照してください。 |
%EnumStringOpens in a new tab | 文字列 | %StringOpens in a new tab の特殊サブクラスです。これにより、possible 値の列挙セットを (DISPLAYLIST および VALUELIST を使用して) 定義できます。%StringOpens in a new tab とは異なり、このプロパティの表示値は、このタイプの列を ODBC 経由でクエリするときに使用されます。 |
%ExactStringOpens in a new tab | 文字列 | EXACT の既定の照合を使用する %StringOpens in a new tab のサブクラスです。 |
%IntegerOpens in a new tab | 整数 | |
%ListOpens in a new tab | $List 形式のデータ | 論理値は $List 形式のデータです。 |
%ListOfBinaryOpens in a new tab | $List 形式のデータ (各リスト項目はバイナリ・データ) | 論理値は $List 形式のデータです。 |
%NameOpens in a new tab | “姓と名” 形式の名前 | %NameOpens in a new tab データ型は、%Storage.Persistent クラスと併用すると、特別なインデックス作成がサポートされます。詳細は、"インターシステムズ・クラス・リファレンス" の "%NameOpens in a new tab" を参照してください。 |
%NumericOpens in a new tab | 固定小数点 | |
%PosixTimeOpens in a new tab | 日付と時間の値 | このデータ型の論理値は、64 ビット整数としてエンコードされた 1970 年 1 月 1 日 00:00:00 以降からの (または以前の) 秒数になります。%PosixTimeOpens in a new tab は %TimeStampOpens in a new tab よりもディスク領域とメモリの使用量が少なく、%TimeStampOpens in a new tab よりもパフォーマンスが向上します。 |
%SmallIntOpens in a new tab | 小さい整数値 | このクラスは %IntegerOpens in a new tab と同じです (OdbcType を除く)。 |
%StatusOpens in a new tab | エラー・ステータス・コード | InterSystems IRIS クラス・ライブラリの多くのメソッドが、%StatusOpens in a new tab タイプの値を返します。これらの値の使用の詳細は、"インターシステムズ・クラス・リファレンス" の "%StatusOpens in a new tab" を参照してください。 |
%StringOpens in a new tab | 文字列 | |
%TimeOpens in a new tab | 時刻値 | 論理値は午前 0 時以降の経過秒数。 |
%TimeStampOpens in a new tab | 日付と時間の値 | %TimeStampOpens in a new tab データ型の論理値は、YYYY-MM-DD HH:MM:SS.nnnnnnnnn 形式で示されます。h が $H 形式の日付/時刻値の場合は、以下に示すように、$ZDATETIME を使用して %TimeStampOpens in a new tab プロパティ: $ZDATETIME(h,3) の有効な論理値を取得できます。
%PosixTimeOpens in a new tabの説明も参照してください。 |
%TinyIntOpens in a new tab | 非常に小さい整数値 | このクラスは %IntegerOpens in a new tab と同じです (OdbcType と、その最大値および最小値を除く)。 |
特殊な使用を目的とした追加のデータ型クラスが数多くあります。これらの型の大部分は、ここにリストしたクラスのサブクラスです。詳細は、インターシステムズ・クラス・リファレンスを参照してください。
SqlCategory でグループ化されたデータ型クラス
データ型クラスについては、SqlCategory クラス・キーワードで SQL カテゴリを指定します。InterSystems SQL は、そのタイプのプロパティの値を処理する際に、このカテゴリを使用します。SqlCategory で管理される演算には、比較演算があります (より大きい、より少ない、等しいなど)。他の演算でも使用することがあります。ここでリストされているデータ型の SqlCategory 値を以下のテーブルに示します。
どのようにリテラル・プロパティが SQL タイプに投影されるかについての詳細は、"InterSystems SQL リファレンス" の “データ型” を参照してください。
OdbcType でグループ化されたデータ型クラス
データ型クラスについては、InterSystems SQL ODBC インタフェースで使用される値と論理データ値を InterSystems IRIS が相互に変換する方法を OdbcType クラス・キーワードで制御します。ここでリストされているデータ型の OdbcType 値を以下のテーブルに示します。
ClientDataType でグループ化されたデータ型クラス
データ型クラスについては、ClientDataType クラス・キーワードにより、InterSystems IRIS が (そのタイプの) プロパティを Java または Active X に投影する方法を制御します。ここでリストされているデータ型の ClientDataType 値を以下のテーブルに示します。
値 | 使用対象 |
---|---|
BIGINT | %BigIntOpens in a new tab |
BINARY | %BinaryOpens in a new tab (または、データの Unicode 変換がないことを要求するすべてのプロパティ) |
CURRENCY | %CurrencyOpens in a new tab |
DATE | %DateOpens in a new tab |
DOUBLE | %DoubleOpens in a new tab |
DECIMAL | %DecimalOpens in a new tab |
INTEGER | %CounterOpens in a new tab、%IntegerOpens in a new tab、%SmallIntOpens in a new tab、%TinyIntOpens in a new tab |
LIST | %ListOpens in a new tab、%ListOfBinaryOpens in a new tab |
NUMERIC | %NumericOpens in a new tab |
TIME | %TimeOpens in a new tab |
TIMESTAMP | %DateTimeOpens in a new tab、%PosixTimeOpens in a new tab、%TimeStampOpens in a new tab |
VARCHAR | %CharOpens in a new tab、%EnumStringOpens in a new tab、%ExactStringOpens in a new tab、%NameOpens in a new tab、%StringOpens in a new tab |