日付 / 時刻の値は、 特定の算術演算およびストリング操作で使用することができ、 特定のストリングとは互換性がありますが、 これはストリングでも数字でもありません。
日付 (date) は、 年、月、日の 3 つの部分からなる値です。 年の部分の範囲は 0001 〜 9999 です。 月の部分の範囲は 1 〜 12 です。 日の部分の範囲は 1 から x です (x は月によって違います)。
日付の内部表示は 4 バイトのストリングです。 各バイトは、2 桁のパック 10 進数からなります。 最初の 2 バイトは年、3 番目のバイトは月、最後のバイトは日です。
DATE 列の長さは、SQLDA の項で説明するように、10 バイトです。 これは、日付の値を文字ストリングで表記するために適した長さになっています。
時刻 (time) は、 時、分、秒の 3 つの部分からなる値であり、 24 時間制の時刻を表します。 時の部分の範囲は 0 〜 24、それ以外の部分の範囲は 0 〜 59 です。 時が 24 の場合、分と秒の指定はゼロになります。
時刻の内部表示は 3 バイトのストリングです。 各バイトは 2 桁のパック 10 進数からなります。 最初のバイトは時、2 番目のバイトは分、最後のバイトは秒です。
TIME 列の長さは、SQLDA の項で説明するように、8 バイトです。 これは、時刻の値を文字ストリングで表記するために適した長さになっています。
タイム・スタンプ (timestamp) は、 7 つの部分 (年、月、日、時、分、秒、マイクロ秒) から成っており、 時刻が小数部分でマイクロ秒を指定する以外は、 上記の定義と同様に日時を示します。
タイム・スタンプの内部表示は 10 バイトのストリングであり、 各バイトは 2 桁のパック 10 進数からなります。 最初の 4 バイトは日付、次の 3 バイトは時刻、 最後の 3 バイトはマイクロ秒です。
SQLDA に記述されている TIMESTAMP 列の長さは 26 バイトです。 これは、値の文字ストリング表示に適した長さです。