Table 30 shows the length and format of column data in D records for each data type for both character and binary formats. In the table, IXFCLENG refers to the contents of bytes 39-43 of a C record (length of column data).
Data Type Code | Data Type | Data Length Information Character Format | Data Length Information Binary Format |
---|---|---|---|
384 | DATE | The value in IXFCLENG is not significant. The length (10
bytes) is inherent in the data type.
The format is: yyyy-mm-dd where yyyy represents the year, mm the month, and dd the day. yyyy, mm, and dd must be numeric characters. Leading zeroes cannot be omitted. The allowable range for yyyy is 0001-9999; for mm, 01-12. The dd range depends on the month. Examples: |
Same as character format |
388 | TIME | The value in IXFCLENG is not significant. The length (8
bytes) is inherent in the data type.
The format is: hh.mm.ss where hh represents the hour in 24-hour format, mm is minutes, and ss is seconds. hh, mm, and ss must all be numeric characters. Leading zeroes can not be omitted. Allowable ranges are:
The special value 24.00.00 for midnight is valid. Examples: 10.37.42 is 10:37:42 AM 08.00.00 is 8 AM exactly 23.30.00 is 11:30 PM |
Same as character format |
392 | TIMESTAMP | The value in IXFCLENG is not significant. The length (26
bytes) is inherent in the data type.
The format is: yyyy-mm-dd-hh .mm.ss.nnnnnn where yyyy is the year, the first mm is the month, dd is the day, hh is hour in 24 hour format, the second mm is minutes, ss is seconds, and nnnnnn is microseconds. Valid ranges for year, month, day, hour, minutes, and seconds are the same as the DATE and TIME data types. nnnnnn can be 000000-999999. Examples: 1997-12-31-23 .59.59.999999 (the last microsecond in 1997) 1998-01-01-00 .00.00.000000 (the first microsecond in 1998) 24.00.00.000000 is valid for the time portion of a time stamp. |
Same as character format |
448 | VARCHAR | IXFCLENG is the maximum length of character string. Data
length consists of N bytes indicated by IXFCLENG preceded by a 5-byte character
count field. (The allowable range for N is 0-254 and for the count
field it is 0-N). The number of characters indicated by the count field
are valid; the rest are meaningless. Example:
If IXFCLENG=00010 Data format is: 00005JONESxxxxxwhere each x is a blank character (X'40'). |
IXFCLENG is the maximum length of character string. Data
length consists of N bytes indicated by IXFCLENG preceded by a 2-byte binary
count field. (The allowable range for N is 1-254 and for the count
field 0-N). The number of characters indicated by the count field are
valid; the rest are meaningless. Example:
If IXFCLENG=00010 Data format is: nnJONESxxxxxwhere nn=X'0005' and each x is a blank character (X'40'). |
452 | CHAR | IXFCLENG is length of character string. Data length is
indicated by N bytes of IXFCLENG. (Allowable range for N is 1-254).
Example:
If IXFCLENG=00005 Data format is: JONESwhere JONES is the 5-byte character string pointed to by bytes 44-49 of the C record. |
Same as character format |
456 | LONG VARCHAR | Same as VARCHAR, except that allowable range for N is 0-32767 | Same as character format |
464 | VARGRAPHIC | IXFCLENG is the maximum number of double-byte characters
(2×N bytes). Data length consists of a 5-byte character count field,
plus twice the number of bytes indicated by IXFCLENG, plus 2 (for shift characters).
The number of 2-byte characters in the count field are valid plus a shift-out
(X'0E') immediately preceding the data, and a shift-in (X'0F')
immediately following the data. The rest can be meaningless. (Allowable range
for N is 1-127 and for the count field 0-N.) Example:
If IXFCLENG = 00006 data format is: 00003oZZYYXXixxxxxx where o is shift-out, i is shift-in, and each x is a blank character (X'40'). |
Data length consists of a 2-byte binary count field followed
by twice the number of bytes indicated by IXFCLENG. The allowable range for
IXFCLENG is 1-127, and for the count field 0-IXFCLENG. The number
of 2-byte characters in the count field are valid. There are no surrounding shift-out and shift-in characters. The rest can be meaningless.
Example:
If IXFCLENG = 00008 data format is: nnZZYYXXWWxxxxxxxx where nn=X'0004' and each x is a blank character (X'40'). |
468 | GRAPHIC | IXFCLENG is the number of double byte characters (2*N
bytes). Data length is 2*N bytes plus a shift out (X'0E')
immediately preceding the data, and a shift-in (X'0F') immediately
following the data. Example:
If IXFCLENG=00005 Data format is: oZZYYXXWWVViwhere o is shift-out and i is shift-in. |
Same as character format except that there are no surrounding
shift-in and shift-out characters in the data string. Example:
If IXFCLENG=00005 Data format is: ZZYYXXWWVV |
472 | LONG VARGRAPHIC | Same as VARGRAPHIC, except that the allowable range for N is 0-16383. | Same as character format. |
480 | FLOAT | The value in IXFCLENG is 8. The length and format of data
is inherent in the data type:
Data consists of a 23-byte character value arranged as follows:
Examples: -1.2345678901234567E+14 +6.2345678901234567E-01 0.0000000000000000E+00 |
The value in IXFCLENG is 8. The length and format of data
is inherent in the data type:
Data consists of an 8-byte floating point value in standard IBM S/370 format for long floating point. |
484 | DECIMAL | Bytes 39-43 of the C record represent the precision
P (first 3 bytes) and scale S (next 2 bytes) of the number. Allowable range
for P is 0- 15. S can be any value less than or equal to P.
Data is formatted as a P+2 byte character value (or P+1 bytes if S=0), right-justified, with the first byte reserved for a sign, and a decimal point (position implied by S) present only if S is not equal to zero. Examples: If P=005, S=00; Data format is: 12345 If P=006, S=02; Data format is: +2345.10 If P=004, S=03; Data format is: -8.515 |
Bytes 39-43 of the C record represent the precision
P (first 3 bytes) and scale S (next 2 bytes) of the number. Allowable range
for P is 0-15. S can be any value less than or equal to P.
Data consists of a (P+2)/2 byte packed decimal value in standard IBM S/370 packed decimal format, with S of the P digits interpreted as following the implied decimal point. Examples: If P=005, S=00; Data format is: X'12345C' If P=006, S=02; Data format is: X'0234510D' |
496 | INTEGER | The value in IXFCLENG is not significant. The length and
format of data is inherent in the data type.
Data consists of an 11-byte character value, right-justified, with the first character reserved for a sign. Examples: 0000000013 +1187642200 -0033588727 |
The value in IXFCLENG is not significant. The length and
format of data is inherent in the data type.
Data consists of a 4-byte binary value. |
500 | SMALLINT | The value in IXFCLENG is not significant. The length and
format of data is inherent in the data type.
Data consists of a 6-byte character value, right-justified, with the first character reserved for a sign. Examples: 00023 +00763 -21311 |
The value in IXFCLENG is not significant. The length and
format of data is inherent in the data type.
Data consists of a 2-byte binary value. |