フィールド・タイプ使用の推奨事項

新しいフィールドを LANSA ディクショナリに定義する場合は、以下の指針を参考にしてください。

 

他のすべてのタイプは、LANSA以外のデータベース・テーブルとの互換性のために用意されています。新しいDBMSテーブルの新しいフィールドや列を定義するときには、基本的にそれらのタイプを使用しないでください。

通常使用されるフィールド・タイプ

 

タイプ

説明

標準的なDBMSへの格納タイプ

ディクショナリで定義可能な最大長  

コード・ページ変換が必要

注記

RDMLまたはRDMLXプログラムで使用可能

Integer

整数

INTEGER

4 バイト

 

ハードウェアとコンパイラにより動作が異なる可能性あり

RDMLX

Packed

標準的な 10 進数

DECIMAL

RDMLX プログラム: 63 桁までで、そのすべての桁で 10 進数を使用可能

RDML プログラム:30 桁までで、そのうちの 9 桁で 10 進数を使用可能

N/A

 

両方

String

ディクショナリ定義に最大長がある可変長の英数文字列

VARCHAR (可変長)

65535

ディクショナリで定義されている最大長までブランクが埋め込まれない。ただし、長さ0の文字列には1個のスペースが追加される

RDMLX

VarBinary

コード・ページの変換がないこと以外は、String とまったく同じ

VARBINARY

32767

不要

ディクショナリ定義の最大長まで埋め込まれない

RDMLX

NVarChar

String と似ているがデータは Unicode として扱われる。実行時に多言語利用が可能

NVARCHAR

65535 文字

要 (ただし、ネイティブ String へ変換する場合のみ)

 

RDMLX

Alpha

ディクショナリ定義に最大長がある一定の長さの英数文字列

CHAR (固定長)

256

常にディクショナリ定義の最大長までブランクで埋め込まれる  

両方

Date

ISO 形式の日付 (YYYY-MM-DD)

 

DATE

N/A

N/A

 

RDMLX

Time

ISO 形式の時間 (HH:MM:SS)

 

TIME

N/A

N/A

 

RDMLX

DateTime

ISO 形式 YYYY-MM-DD HH:MM:SS[.fffffffff] の日付と時間。[.fffffffff] の部分の存在と長さは定義可能  

DATETIME

29

N/A

 

RDMLX

Boolean

TrueまたはFalse。

10 進数

N/A

N/A

 

RDMLX

 

 

特殊な文字とバイナリのタイプ(RDMLXプログラムのみで使用可能)

 タイプ

説明

標準的にDBMSへ格納されるタイプ

ディクショナリで定義可能な最大長 

使用される標準的なDBMSへの格納の長さ

コード・ページ変換が必要

重要なポイント

Char

固定長であることと、DBMSへの格納の実行が通常CHARである以外は、Stringとまったく同じ

CHAR

65535

固定長

 

Binary

DBMSの実装が多様であること以外は、VarBinaryとまったく同じ

BINARY

32767

固定または可変のいずれか

不要

固定長の列タイプを使用するデータベースでは最大長まで埋め込みが行われる

NChar

固定長であることと、DBMSへの格納の実行が通常NCHARである以外は、NVarCharとまったく同じ

NCHAR

65535

固定長

要 (ただし、ネイティブ String へ変換する場合のみ)

 

CLOB

文字ラージ

オブジェクト   

CLOB

未定義

内容により異なる

DBMSのパフォーマンスの考慮事項が適用される場合あり

BLOB

バイナリー

ラージ

オブジェクト

BLOB

未定義

内容により異なる

不要

DBMSのパフォーマンスの考慮事項が適用される場合あり

 

 

ほとんど使用されない数値タイプ

タイプ

説明

標準的なDBMSへの格納タイプ

ディクショナリで定義可能な最大長 

使用するケース

重要なポイント

RDMLまたはRDMLXプログラムで使用可能

Signed

Signed (符号付き) 10進数、または Zoned (ゾーン) 10進数

DECIMAL

RDMLX プログラム:63 桁までで、そのうちの 63 桁で 10 進数を使用可能

RDML プログラム:30 桁までで、そのうちの 9 桁で 10 進数を使用可能

プログラムによる数値と文字のオーバーレイ操作用  

算術演算では、SignedはPackedやIntegerより効率に劣る

両方

Float

Floating Point (浮動小数点)

FLOAT

未定義

浮動小数点数は厳密な数値ではなく、近似値

LANSA以外で定義されているDBMSテーブルでのみ使用する場合

ハードウェアとコンパイラにより動作が異なる可能性あり

RDMLX