While using Fast Unload for Db2 for z/OS (PFU) to unload data in comma delimited format and
using COMMA parameter x'6A' as the delimiter the unloaded data has x'49' instead of the specified x'6A'.
The user was not specifying the correct CCSID for the source system. The customer environment was operating with a Latin character set.
User initially set CCSID (500,930,932). Site then adjusted to CCSID (1047,930,932).
This produced the correct x'6A' character in the unloaded data.
IBM CCSID 1047 defines x'6A' as a 'Broken bar'. In the Latin America character set the broken bar is a x'49'.
FASTUNLOAD
DISCARDS 100
DISPLAY-STATUS 10000
CCSID (1047,930,932)
EXCP YES
INPUT-FORMAT TABLE
IO-BUFFERS 50
LOAD-CONTROL NONE
OUTPUT-FORMAT COMMA-DELIMITED
COMMA X'6A'
PART-INDEPENDENCE NO
SHRLEVEL CHANGE
SORTFLAG ALL
SORTSIZE 4M
SORTNUM 8
ESTIMATED-ROWS 7500000
SQL-ACCESS NONE
SELECT * FROM authid.table;
Sample data unloaded. Hex On display. Note the x'6A' below that displays as a ¦
000001 '99999 '¦'TEST ALL NINES '¦100¦'A'
7FFFFF4767ECEE4CDD4DCDCE44444444444444444444444444444444444476FFF67C7
D999990DAD35230133059552000000000000000000000000000000000000DA100AD1D
In the SYSOUT of the job PFU can be seen adjusting the CCSID to the required target CCSID:
PFU0661I - PFU PROCESSING AN EBCDIC DB2 OBJECT
USING CCSID( 1027, 5035, 4396).
PFU0671I - PFU WILL CONVERT OBJECT DATA TO TARGET
USING CCSID( 1047, 930, 932).