Storage
A PERIOD(DATE) field is a fixed length data type and is saved as two DATE values.
Element Type | Field Size in bytes | Maximum Size in bytes in the row |
---|---|---|
DATE | 8 | 8 |
External Representation of PERIOD(DATE)
In field mode, SQL Engine returns PERIOD(DATE) data as character data.
Assume L is the maximum length of the formatted character string for the format associated with this Period data type. The resulting character string contains two strings representing the beginning and ending bounds of the period value expression, each up to length L , and each enclosed in apostrophes ('), separated by comma and a space (,), and then enclosed within a left and right parenthesis [( )]. Thus, the maximum length of the resulting character string is 2* L +8.
Assume the actual length is K which may be less than 2*L+8, for example, if the format includes the full names of months and the specific month for a bound is July.
For modes other than field mode, and for input data, the external representation of PERIOD(DATE) consists of two consecutive date values. Each date value is a 4-byte, signed integer flipped to client form. This integer represents a date in the same manner as for a DATE data type, for example, (10000*(year-1900)) + (100*month) + day.
Restrictions
A primary index column or partitioning column cannot be a column that has a Period data type.