Internally, character data is stored as hexadecimal values called code points. When a device interprets or displays a code point as a character, it uses a code page, which is a set of assignments of characters to code points. If two terminals use different code pages, they can display the same code point as a different character. For example, in code page 37, the code point X'4F' represents a vertical bar (|), but in code page 500, the code point X'4F' represents an exclamation mark (!).
As of Version 3 Release 4, the database manager supports Coded Character Set Identifiers (CCSIDs). The CCSID attribute specifies which code page to use both to map code points to characters, and to map characters to code points. The CCSID and the code points are used together to determine the character that the code point represents.
Note: | The default CCSID is implicitly set by the default CHARNAME. |
For example, suppose a DB2 Server for VSE online application requester has the default CHARNAME set to ENGLISH (CCSIDSBCS=37), the remote DRDA DB2 Server for VSE application server has the default CHARNAME set to INTERNATIONAL (CCSIDSBCS=500). In this case, if the user inserts an exclamation mark into a character column, the application requester sends X'5A' (the code point that represents an exclamation mark in the code page used with CCSID 37). The application server converts X'5A' to X'4F' (because X'4F' represents an exclamation mark in the code page used with CCSID 500), then stores X'4F' in the column.
If another application requester using a different CCSID retrieves the character, X'4F' is converted to the code point that represents an exclamation mark in the code page specified by the application requester CCSID. The character is interpreted and displayed correctly, and the hexadecimal value that is stored in the database is not changed.
For more information on how to decide the default CCSID values you should use, see Determining CCSID Values.
The sections that follow discuss the following topics:
For examples that show the interactions among the different values, see Examples of Setting Values for an Installation.
If an application requester and an application server do not use the same default CCSID, CCSID conversion is done during communications between the two.
Note: | For an application requester using an ASCII representation of the data, CCSID conversion always occurs. |
The application requester CCSIDs are recognized by the application server when DRDA support is installed and being used. If DRDA support is not installed, the application requester CCSIDs are not recognized by the application server.
Table 18 and Table 19 show CHARNAMEs and the corresponding CCSIDs
that can be used as system defaults. Table 18 shows the SBCS CHARNAME CCSIDs, and Table 19 shows the mixed CHARNAME CCSIDs, with the
component SBCS and DBCS CCSIDs for each mixed CCSID.
CCSID | Character Set | Code Page | CHARNAME | Description |
---|---|---|---|---|
37 | 697 | 37 | ENGLISH | Country extended code pages (CECP): USA, Canada (S/370* system), Netherlands, Portugal, Brazil, Australia, New Zealand |
273 | 697 | 273 | GERMAN | CECP: Austria, Germany |
277 | 697 | 277 | DANISH-NORWEGIAN | CECP: Denmark, Norway |
278 | 697 | 278 | FINNISH-SWEDISH | CECP: Finland, Sweden |
280 | 697 | 280 | ITALIAN | CECP: Italy |
284 | 697 | 284 | SPANISH | CECP: Spain, Latin America (Spanish) |
285 | 697 | 285 | UK-ENGLISH | CECP: United Kingdom |
290 | 1172 | 290 | 290 | Japanese Katakana, extended host single byte |
297 | 697 | 297 | FRENCH | CECP: France |
420 | 235 | 420 | ARABIC | Arabic (all presentation shapes) |
423 | 218 | 423 | GREEK-423 | Greek (Coexistence) |
424 | 941 | 424 | HEBREW | Hebrew |
500 | 697 | 500 | INTERNATIONAL | CECP: Belgium, Canada (AS/400* system), Switzerland, International Latin-1 |
833 | 1173 | 833 | 833 | Korean, extended host single byte |
836 | 1174 | 836 | 836 | Simplified Chinese, extended host single byte |
838 | 1176 | 838 | THAI | Thai, extended host single byte |
870 | 959 | 870 | 870 | ROECE (Regional Office for East & Central Europe) Latin-2 Multilingual |
871 | 697 | 871 | ICELANDIC | CECP: Iceland |
875 | 925 | 875 | GREEK | Greek |
1025 | 1150 | 1025 | CYRILLIC | Cyrillic Multilingual Turkish Latin 5 |
1027 | 1172 | 1027 | 1027 | Japanese Latin, extended host single byte |
1112 | 1305 | 1112 | 1112 | Latvian/Lithuanian |
1122 | 1307 | 1122 | ESTONIAN | Estonian |
1123 | 1326 | 1123 | UKRAINIAN | Cyrillic Ukrainian EBCIDIC |
1130 | 1336 | 1130 | VIETNAMESE | EBCIDIC Vietnamese |
1132 | 1341 | 1133 | LAO | EBCIDIC Lao |
1137 | 1137 | 1137 | HINDI | Hindi |
1142 | 697 | 1142 | EDANISH-NORWEIGAN | Danish and Norweigan Euro CECP |
1143 | 697 | 1143 | EFINNISH-SWEDISH | Finnish and Swedish Euro CECP |
1145 | 697 | 1145 | E-SPANISH | Spanish Euro CECP |
1148 | 697 | 500 | E-INTERNATIONAL | International Euro CECP |
1140 | 697 | 37 | E-ENGLISH | English Euro CECP |
1141 | 697 | 273 | E-GERMAN | German Euro CECP |
1144 | 697 | 280 | E-ITALIAN | Italian Euro CECP |
1146 | 697 | 285 | E-UK-ENGLISH | UK English Euro CECP |
1147 | 697 | 297 | E-FRENCH | French Euro CECP |
28709 | 1175 | 37 | 28709 | Traditional Chinese, extended host single byte |
Mixed | Component CCSIDs | Character Set | Code Page | CHARNAME | Description |
---|---|---|---|---|---|
930 | 290 (SBCS) 300 (DBCS) | 1172 1001 | 290 300 | 930 | Japanese (Katakana)-Kanji mixed host (including 4370 user-defined characters) extended single byte |
933 | 833 (SBCS) 834 (DBCS) | 1173 934 | 833 834 | KOREAN | Korean host mixed (including 1880 user-defined characters) extended single byte |
935 | 836 (SBCS) 837(DBCS) | 1174 937 | 836 837 | S-CHINESE | Simplified Chinese host mixed (1880 user-defined characters) extended single byte |
937 | 28709 (SBCS) 835 (DBCS) | 1175 935 | 37 835 | T-CHINESE | Traditional Chinese host mixed (6204 user-defined characters) extended single byte |
939 | 1027 (SBCS) 300 (DBCS) | 1172 1001 | 1027 300 | 939 | Japanese (Latin)-Kanji mixed host (including 4370 user-defined-characters) extended single byte |
1364 | 833 (SBCS) 834 (DBCS) | 65535 65535 | 833 834 | KOREAN-1364 | Korean host mixed extended including 11,172 full hangul |
1388 | 836 (SBCS) 837 (DBCS) | 65535 65535 | 846 837 | S-CHINESE-GBK | S-Ch DBCS-Host Data GBK mixed, all GBK character set and other growing chars |
5026 | 290 (SBCS) 4396 (DBCS) | 1172 370 | 290 300 | KATAKANA | Japanese (Katakana)-Kanji mixed host (including 1880 user-defined characters) extended single byte |
5035 | 1027 (SBCS) 4396 (DBCS) | 1172 370 | 1027 300 | JAPANESE- ENGLISH | Japanese (Latin)-Kanji mixed host , (including 1880 user-defined characters) extended single byte |
For more information about CCSIDs, see the Character Data Representation Architecture Level 1, Registry, and the Character Data Representation Architecture Reference and Registry manuals.
For information on the types of DBCS conversion that can be done between CCSIDs, see Coding Your Own TRANSPROC Exit.