SYSSTRINGS catalog table
The SYSSTRINGS table contains information about character conversion. Each row describes a conversion from one coded character set to another. The schema is SYSIBM.
Also refer to Building and using Dynamic Link Libraries (DLLs) for information on the additional conversions that are supported.
Each row in the table must have a unique combination of values for its INCCSID, OUTCCSID, and IBMREQD columns. Rows for which the value of IBMREQD is N can be deleted, inserted, and updated subject to this uniqueness constraint and to the constraints imposed by a VALIDPROC defined on the table. An inserted row could have values for the INCCSID and OUTCCSID columns that match those of a row for which the value of IBMREQD is Y. Db2 then uses the information in the inserted row instead of the information in the IBM®-supplied row. Rows for which the value of IBMREQD is Y cannot be deleted, inserted, or updated. For information about the use of inserted rows for character conversion, see How an entry in SYSIBM.SYSSTRINGS works with character conversion.
Db2 has two methods for character conversions and applies them in the following order:
- Conversions specified by the various combinations of the INCCSID and OUTCCSID columns in the SYSIBM.SYSSTRINGS catalog table.
- Conversions provided by z/OS® support for Unicode. For more information, see z/OS Unicode Services User’s Guide and Reference.
If neither of these methods can be used for a particular character conversion, Db2 returns an error.
Column name | Data type | Description | Use |
---|---|---|---|
INCCSID | INTEGER
NOT NULL |
The source CCSID for the character conversion represented by this row. The value of the source CCSID must be in the range of 1 to 65533 and must not be the same as the value for the OUTCCSID column. | G |
OUTCCSID | INTEGER
NOT NULL |
The target CCSID for the character conversion represented by this row. The value of the target CCSID must be in the range of 1 to 65533 and must not be the same as the value for the INCCSID column. | G |
TRANSTYPE | CHAR(2)
NOT NULL |
Indicates the nature of the conversion. Values
can be:
|
G |
ERRORBYTE | CHAR(1)
FOR BIT DATA (Nulls are allowed) |
The byte used in the conversion table as an error
byte. Any non-null value that is specified for the ERRORBYTE column
must not be the same as the value that is specified for the SUBBYTE
column. Null indicates the absence of an error byte. |
S |
SUBBYTE | CHAR(1)
FOR BIT DATA (Nulls are allowed) |
The byte used in the conversion table as a substitution
character. Any non-null value that is specified for the SUBBYTE column
must not be the same as the value that is specified for the ERRORBYTE
column. Null indicates the absence of a substitution character. |
S |
TRANSPROC | VARCHAR(24)
NOT NULL WITH DEFAULT |
The name of a module or blanks. A nonblank value must conform to the rules for z/OS program names. If IBMREQD is 'N', a nonblank value is the name of a conversion procedure provided by the user. The first five characters of the name of a user-provided conversion procedure must not be 'DSNXV'; these characters are used to distinguish user-provided conversion procedures from Db2 modules that contain DBCS conversion tables. If IBMREQD is 'Y', a nonblank value is the name of a Db2 module that contains DBCS conversion tables. |
G |
IBMREQD | CHAR(1)
NOT NULL |
A value of Y indicates that the row was provided with the Db2 product code. For all other values, see Release dependency indicators. The value in this field is not a reliable indicator of release dependencies. |
G |
TRANSTAB | VARCHAR(256)
FOR BIT DATA NOT NULL WITH DEFAULT |
Either a 256-byte conversion table or an empty (0 length) string. | S |