Skip to main content

一般的なデータ型クラス

ここでは、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 値を以下のテーブルに示します。

SqlCategory でグループ化されたデータ型クラス
InterSystems IRIS データ型
DATE %DateOpens in a new tab
DOUBLE %DoubleOpens in a new tab
INTEGER %BigIntOpens in a new tab%BooleanOpens in a new tab%CounterOpens in a new tab%IntegerOpens in a new tab%SmallIntOpens in a new tab%TinyIntOpens in a new tab
NAME %NameOpens in a new tab
NUMERIC %CurrencyOpens in a new tab%DecimalOpens in a new tab%NumericOpens in a new tab
POSIXTS %PosixTimeOpens in a new tab
STRING %BinaryOpens in a new tab%CharOpens in a new tab%EnumStringOpens in a new tab%ExactStringOpens in a new tab%ListOpens in a new tab%ListOfBinaryOpens in a new tab%StatusOpens in a new tab%StringOpens in a new tab
TIME %TimeOpens in a new tab
TIMESTAMP %DateTimeOpens in a new tab%TimeStampOpens in a new tab

どのようにリテラル・プロパティが SQL タイプに投影されるかについての詳細は、"InterSystems SQL リファレンス" の “データ型” を参照してください。

OdbcType でグループ化されたデータ型クラス

データ型クラスについては、InterSystems SQL ODBC インタフェースで使用される値と論理データ値を InterSystems IRIS が相互に変換する方法を OdbcType クラス・キーワードで制御します。ここでリストされているデータ型の OdbcType 値を以下のテーブルに示します。

OdbcType でグループ化されたデータ型クラス
InterSystems IRIS データ型
BIGINT %BigIntOpens in a new tab
BIT %BooleanOpens in a new tab
DATE %DateOpens in a new tab
DOUBLE %DoubleOpens in a new tab
INTEGER %CounterOpens in a new tab%IntegerOpens in a new tab
NUMERIC %CurrencyOpens in a new tab%DecimalOpens in a new tab%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
VARBINARY %BinaryOpens in a new tab
VARCHAR %CharOpens in a new tab%EnumStringOpens in a new tab%ExactStringOpens in a new tab%ListOpens in a new tab%ListOfBinaryOpens in a new tab%NameOpens in a new tab%StatusOpens in a new tab%StringOpens in a new tab

ClientDataType でグループ化されたデータ型クラス

データ型クラスについては、ClientDataType クラス・キーワードにより、InterSystems IRIS が (そのタイプの) プロパティを Java または Active X に投影する方法を制御します。ここでリストされているデータ型の ClientDataType 値を以下のテーブルに示します。

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

関連項目

FeedbackOpens in a new tab