DB2 Server for VSE: System Administration


Choosing the Application Server Default CHARNAME and CCSID

The application server default CHARNAME is set using the CHARNAME initialization parameter. The database manager uses the CHARNAME value to determine the classification table and translation table which are used to identify valid characters and to determine how to fold lowercase characters to uppercase. For more information on the CHARNAME initialization parameter, see CHARNAME.

The CHARNAME parameter also specifies the application server default coded character set identifier (CCSID). For a newly installed database, the application server default CHARNAME is INTERNATIONAL, and the application server default CCSID is 500. For a migrated database, the application server default CHARNAME is ENGLISH, and the application server default CCSID is 37. The application server default CCSID is the value of CCSIDMIXED if it is not zero, otherwise it is the value of CCSIDSBCS. Refer to CCSID Conversion and Determining CCSID Values for more information on CCSIDs.

If you use DBCS characters, you need to use a mixed CCSID as the the application server default. A mixed CCSID has both an SBCS component CCSID, and a DBCS component CCSID. For more information, see Table 19.

The application server default CCSID value is used for the following:

Depending on the application server default subtype value (that is, the CHARSUB value), the application server default value for CCSIDMIXED or CCSIDSBCS is used for the following:

It is important that you choose the correct default CHARNAME and CCSID for your installation. The goals of choosing the correct values are to ensure the integrity of character data representation, and to reduce the performance overhead associated with CCSID conversion. The application server and application requester should have the same CCSID value unless there is a specific reason for them to be different.

When the application server and application requester have different CCSID values, character conversion cannot be avoided. This conversion has an associated performance overhead. Performance degradation also occurs if the CCSID conversion causes a sargable predicate to become residual. For example, this can occur on a simple equals predicate like, T1.C1 = T2.C2. For this case, C2 was created prior to migrating to Version 3 Release 4 and has a CCSID of 37. C1 was created using Version 3 Release 4 with the application server default CHARNAME set to INTERNATIONAL (CCSID 500), As a result, since this predicate requires the CCSID conversion of the data in the columns, it is residual. For more information on performance, see the DB2 Server for VSE & VM Performance Tuning Handbook.

For example, if your application server is only accessed by local users whose terminal controllers are generated with code page 37 and character set 697 (CP/CS 37/697) for the US ENGLISH characters, then you should set the application server default CHARNAME to ENGLISH. This is because CP/CS 37/697 corresponds to the CCSID of 37 which corresponds to the CHARNAME of ENGLISH.

To eliminate unnecessary CCSID conversion, choose an application server default CCSID to be the same as the CCSID of the application requesters which access your application server most often.

The following is an example of how these two goals can be in conflict.

The situation has these characteristics:

If the application server default CHARNAME is set to ENGLISH (CCSID 37), this keeps the data integrity for the local application requesters. However, CCSID conversion overhead is incurred for all remote application requesters who have CHARNAME UK-ENGLISH (CCSID 285).

If the application server default CHARNAME is set to UK-ENGLISH (CCSID 285), this will avoid the CCSID conversion overhead incurred for the remote application requesters, but will cause data integrity problems for the local application requesters. Certain characters will not be displayed correctly for local application requesters. For example, a British pound sign (£) will be displayed as a dollar sign ($).

These are the trade-offs to consider when choosing your application server default CHARNAME.

For more information on CCSIDs, see the Character Data Representation Architecture Reference and Registry manual.

Attention: Immediately following an installation, the application server CHARNAME is set to INTERNATIONAL and the CCSID is 500. Immediately following a migration, the application server CHARNAME is set to ENGLISH and the CCSID is 37. If you do not choose your own application server defaults, these settings may not be correct for your system.

For information on how to change the application server default CHARNAME and CCSID, see Setting the Application Server Default CHARNAME and CCSIDs. For a summary of the considerations for changing these values, see Considerations when changing default CHARNAME and CCSID.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]