How Db2 performs character conversions
When character conversions are needed, Db2 for z/OS® performs these conversions automatically based on the CCSIDs of the source and target data. When you set up Db2, you need to identify valid conversion definitions for source and target CCSIDs to Db2. Some of these definitions are predefined for you.
To perform a conversion from one CCSID to another CCSID, Db2 uses the translation tables that are identified by the following resources in the order listed.
- The Db2 catalog
table SYSIBM.SYSSTRINGS
Each row in this catalog table describes a conversion from one coded character set to another. IBM® supplies some of the rows. You can also add your own rows. If the same pair of CCSIDs are in two rows, one row that is IBM-supplied and one row that you added, Db2 uses the row that you provided. Rows that you add have IBMREQD=N. However, some rows that have IBMREQD=N might have been loaded from maintenance that IBM ships between releases.
SYSIBM.SYSSTRINGS describes only those conversions to and from ASCII and EBCDIC CCSIDs. Conversions to and from Unicode CCSIDs are not included in SYSIBM.SYSSTRINGS.
- z/OS Unicode Services
z/OS Unicode Services uses the conversion definitions in a conversion image data set.
Thus, any conversions that are defined in SYSIBM.SYSSTRINGS override the conversions that are defined in z/OS Unicode Services. If SYSIBM.SYSSTRINGS does not define a conversion, Db2 uses z/OS Unicode Services.
If a conversion for a certain combination of source and target CCSIDs is not defined in SYSIBM.SYSSTRINGS or z/OS Unicode Services, z/OS Unicode Services dynamically adds the conversion. This ability is available in z/OS 1.7 and later.