日付/時刻型

規則として、EGL は日付情報とプレゼンテーション書式を区別します。

表 1. プリミティブ日付/時刻型
プリミティブ サイズ データ・フォーマット
DATE 8 桁 グレゴリオ yyyyMMdd
INTERVAL 1 から 21 桁 マスクに基づく
TIME 6 桁 HHmmss
TIMESTAMP 1 から 20 桁 マスクに基づく
以下の考慮事項は、日付/時刻型に適用されます。
  • 日付と時刻の計算について詳しくは、『日付および時刻式』を参照してください。
  • EGL は常に、yyyyMMdd (4 桁の年、2 桁の月、および 2 桁の日) という 8 桁の形式を使用して、 DATE 値をグレゴリオ暦形式で格納します。 ただし、入力および出力中は、EGL は構文解析フォーマットや表示フォーマット、および International Components for Unicode ライブラリー (ICU4J) の Java™ バージョンを使用して、 必要なデータ変換を実行します。 タイ語のアプリケーションで、仏教暦の日付を入力するよう求められた場合でも、 EGL は (ICU4J を使用して) その日付を 8 桁のグレゴリオ暦形式で格納します。 詳しくは、『日付、時刻、およびタイム・スタンプのフォーマットの指定子』を参照してください。
  • EGL は、常に TIME 値を HHmmss 形式で保存します。ミリ秒を含む時刻値が必要な場合は、TIMESTAMP 変数を使用する必要があります。
  • EGL は、TIMESTAMP に基づく変数をデフォルトで yyyyMMddHHmmss として格納しますが、 以下の例に示すように、変数の宣言時に別のマスクを指定することができます。
    myTS timestamp("yyyyMMdd");

互換性

表 2. 「日付/時刻」型の互換性に関する考慮事項
プラットフォーム 問題
iSeries COBOL DATE 型変数が、 SQL データベースで DATE として定義されている SQL 列に対応する場合、そのデータベースでのデータの日付形式は iSeries QDATFMT システム変数で指定される形式に一致する必要があります。
JavaScript 生成 Rich UI は INTERVAL 型をサポートしません。そのほかの詳細は、 『Rich UI の日時サポート』を参照してください。
z/OS® COBOL DATE 型変数が、 SQL データベースで DATE として定義されている SQL 列に対応する場合、そのデータベースでのデータの日付形式は、各国語オプション・モジュールでのデフォルト長システムのグレゴリオ暦 日付形式で指定される形式に一致する必要があります。