Compatibility issues

Backward compatibility

8 8 8

Backward compatibility of DB2 UDB Version 8.2 databases

8

If you create a database with DB2 Universal Database Version 8.2, you cannot 8use that database at a Version 8.1 level. That database can only be used at 8a Version 8.2 or later level.

8

Databases created at the DB2 UDB Version 8.2 level may have additional 8 functionality that was not available on earlier versions. This difference 8may result in unexpected and undesirable behavior if you attempt to move 8your new database to a previous release of DB2 UDB.

8 8
Note:
8
The only way to move 8a database from Version 8.2 back to Version 8.1 is if the database was originally 8created under Version 8.1. Even then, backward migration is possible only 8after running the db2demigdb tool. However, you 8might encounter problems if you used built-in functions that have changed 8in Version 8.2.
8 8 8

Clarification of DB2 UDB client support

8

The "DB2 client overview" section of the DB2 Quick 8Beginnings for Clients book states the following:

DB2 clients can 8connect to DB2 servers two releases later or one release earlier than the 8client's release level, as well as to servers at the same release level.
8

The amendment to that statement is as follows:

8

While connections from Version N clients to Version N + 2 servers are 8possible in some environments, this connection is a supported configuration 8only as long as Version N is in service. Once Version N is withdrawn from 8service, this configuration is no longer supported.

8

DB2 Version 6 8clients connecting to a DB2 Version 8 server is no longer supported because 8Version 6 has been withdrawn from service.

8

Similarly for DB2 UDB server support, 8a Version N client can connect to a Version N - 1 server, unless the Version 8N - 1 server is out of service.

7 7 7

Health registry changes when migrating from DB2 UDB Version 8.2 back to DB2 UDB Version 78.1

7

Any registry changes made at the DB2 UDB Version 8.2 level are lost when you 7migrate back to DB2 UDB Version 8.1. The registry reverts to the version 78.1 HealthRules.reg file that contains the settings that existed before you 7upgraded to DB2 UDB Version 8.2 and started using the settings in the HealthRules2.reg 7file.

3 3 3

Alternate FixPaks (Linux and UNIX)

3 3

Prior to DB2 Universal Database (UDB) Version 8, FixPaks 3functioned only as updates to installed DB2 UDB packages or file sets in one fixed 3location. This meant that FixPaks installation replaced existing files with 3updated ones, which were provided in the FixPaks. Multiple DB2 FixPak levels 3could not exist on a single system. Now, DB2 UDB Enterprise Server Edition (ESE) can 3exist at multiple fix pack levels in the same system for Linux(TM)-based 3and UNIX(R)-based operating systems. This feature, supported in production 3operating environments since Version 8.1.2, is achieved using the following 3two FixPak types:

3
3
regular FixPaks
3
3 3
3
alternate FixPaks
3
3 3
3
3 3
Notes:
3
    3
  1. You are not required to perform a multiple FixPak 3installation if it is unnecessary for your environment.
  2. 3
  3. 3Starting with IBM DB2 UDB Enterprise Server Edition (ESE) for Linux and UNIX, Version 8.1.2, fix packs are supported in production 3operating environments when they are installed as Multiple fix packs.3
  4. 3
  5. 7On Linux, alternate FixPaks are available on the following 7platforms only: 73
  6. 3
  7. Two or more DB2 instances running at different fixpak levels on the same 3system do not support operations which make DB2 Internal Procedure Calls (IPCs), 3such as Federated queries. All instances involved in such operations on the 3same system should be at the same DB2 fixpak level.
  8. 3
  9. 9DB2 UDB Version 8 alternate FixPaks only support DB2 ESE on 9supported Linux and Unix platforms.3
  10. 3
3

To update a multiple FixPak instance to a different FixPak level, perform 3one of the following operations:

3 3

For further information regarding downloading alternate FixPaks, visit 3the IBM support site at http://www.ibm.com/software/data/db2/udb/support.html.

39 9 9

Query Patroller Version 8.2.2 query data compatibility with earlier 9FixPaks

9

Starting with Version 8.2.2, the contents of the TRACK_QUERY_INFO Query 9Patroller control table that were captured in a 32-bit environment can 9be used in a 64-bit environment. This capability eases the migration 9effort to a 64-bit environment. Information captured in the TRACK_QUERY_INFO 9Query Patroller control table at Version 8.2.2 cannot be used to generate 9historical data for that query or to execute held queries under any previous 9FixPak level.

Data Warehouse Center previous server support restrictions

The following limitations exist for previous server support for DB2 Universal Database (UDB) Enterprise Server Edition Version 8 Data Warehouse Center:

Large Object (LOB) support
Systems Network Architecture (SNA) support
If you use SNA to connect to your warehouse sources and targets, you must change the configuration to TCP/IP over SNA or use the Windows NT warehouse agent.
Support for EXPORT and LOAD utilities
The Data Warehouse Center Version 8 LOAD utility does not support a Version 7 target database. If you want to keep your target as a Version 7 database, then you must change the LOAD step to a SQL Select and Insert step. SQL Select and Insert steps use a DELETE* statement followed by SELECT and INSERT statements. SQL Select and Insert steps require the database to log all transactions. As a result, the performance for SQL Select and Insert steps is not as efficient as it is for the EXPORT and LOAD utilities.

2Development Center APARs required for SQLJ and SQL Assist 2support on DB2 UDB for OS/390, Version 6 and DB2 UDB for z/OS, Version 7

2When using the Development Center on an Application Development 2client for DB2 Universal Database (UDB) Version 8 on Windows or UNIX operating systems, the following APARs need to 2be installed on the server to enable SQLJ and SQL Assist support:

2DB2 UDB for z/OS, Version 7
2DB2 UDB for OS/390, Version 6

Two versions of SQL Assist are launched from DB2 UDB

You can invoke both Version 7 and Version 8 of SQL Assist from within DB2 Universal Database, Version 8. You can start Version 7 from the DB2 Data Warehouse Center. All other centers start the latest Version 8. The product online help has additional information for SQL Assist, Version 7.

Change in Unicode server behavior

In Version 7, Unicode servers ignored any graphic code pages sent by applications at connect time and assumed that UCS2 Unicode (code page 1200) was being used. Version 8 Unicode servers now respect the code page sent by the client.

8 8 8

Database configuration parameter changes during migration

8

DB2 UDB Version 8.2 uses a new 16K database configuration parameter file 8named SQLDBCONF. This is a separate file from the DB2 UDB Version 8.1 4K database configuration 8parameter file named SQLDBCON.

8

After migrating to DB2 UDB Version 8.2, the product migrates the contents 8of the Version 8.1 4K file and uses the 16K file for logging database configuration 8parameter changes. The Version 8.1 4K file is retained, but it is not used.

8

If you migrate back to DB2 UDB Version 8.1, the DB2 UDB Version 8.1 product reverts to using 8the original Version 8.1 4K file for logging database configuration parameter 8changes. The Version 8.2 16K file is retained, but it is not recognized by 8the DB2 UDB Version 8.1 product. Changes made to the 16K database configuration 8parameter file between migrating to Version 8.2 and migrating back to Version 88.1 are, in effect, concealed from the earlier DB2 UDB level because the changes are not 8migrated to the original 4K file.

8

In addition, if you migrate to DB2 UDB Version 8.2 again, the DB2 UDB Version 88.2 product recognizes that the 16K database configuration file already exists 8and reverts to using the Version 8.2 16K file for logging database configuration 8parameter changes. The Version 8.1 4K file is retained, but it is not recognized 8by the DB2 UDB Version 8.2 product. Changes made to the 4K database configuration 8parameter file between migrating back to Version 8.1 and remigrating to Version 88.2 are, in effect, concealed from the more recent DB2 UDB level because the changes are not 8migrated to the existing 16K file.

7 7 7

db2diag.log format message enhancements

7

The db2diag.log file format has been improved in a number of ways for Version 78.2. The log file is now easier to read manually and easier to parse in software. 7The improvements include:

7

Other changes have been made as well, such as changing the database field name to DB.

7

Event records have been added as diagnostic messages to the db2diag.log 7file. Examples of such events are:

7

Event records have "Event" specified in the LEVEL field. Although events are not errors, they might be logged at 7diagnostic levels other than 4 (Informational) or 3 (Warning) depending on 7their importance.

7 7 7

db2set profile registry variables and DB or DBM configuration parameters 7are now logged

7

Starting with Version 8.2, the following updates are logged in the db2diag.log 7file:

7 7

The messages for these updates are logged at high diagnostic levels due 7to their importance.

7

The following types of db2set profile registry updates are logged:

7
7
Modify
7
The db2set variableName=value command yields a db2diag.log entry such as: 7
2004-04-22-19.19.14.156959-240 I79582C286         LEVEL: Event
7PID     : 2437242              TID  : 1           PROC : db2set
7INSTANCE: db2user              NODE : 000
7FUNCTION: DB2 UDB, oper system services, db2set_main, probe:40
7CHANGE  : CFG DB2SET: DB2DBDFT: From: "OLDDB" To: "SAMPLE"
7
7
Delete
7
The db2set -r command yields a db2diag.log entry such as: 7
CHANGE  : CFG DB2SET: DB2DBDFT: From: "SAMPLE" To: ""
7 7
Note:
7
The header information is omitted in the preceding example.
7
7
Reset
7
The db2set variableName=value command 7yields a db2diag.log entry such as: 7
CHANGE  : CFG DB2SET: Profile registry was reset
7 7
Note:
7
The header information is omitted in the preceding example.
7
7
7

Examples for DB and DBM configuration parameter updates are

7
CHANGE  : CFG DB SAMPLE: "Maxlocks" From: "10" To: "20"
7
7CHANGE  : CFG DBM: "Diaglevel" From: "3" To: "1"
7
7CHANGE  : CFG DBM: Reset to the system defaults
7 7
Note:
7
The header information is omitted in the preceding examples.
7

To find these configuration update messages, use db2diag tool. For example:

7

Product compatibility

9 9 9

JDK 1.4.2 supported by DB2 Universal Database for Linux, UNIX, and Windows

9

DB2 Universal Database(TM) (UDB) for Linux, UNIX, 9and Windows(R), Version 8.2.2 (equivalent to Version 8.1 FixPak 9), supports JDK 1.4.2 9on all DB2 UDB supported 32-bit and 64-bit workstation operating 9system environments. This support includes, but is not limited to, support 9for building and running Java(TM) client applications, building and running Java 9routines from the command line, building and running Java routines from the 9DB2 Development Center where it is supported, as well as for running other 9DB2 tools.

9

When you install DB2 UDB, Version 8.2, the latest supported version of 9the Java developer kit will also be installed if it is not already installed, 9unless the DB2 UDB installation is an update of a previous DB2 UDB Version 98 installation. If you are updating a previous installation of DB2 UDB Version 98, you must install the Java developer kit from the CD.

9

The following table indicates the DB2 supported 32-bit and 64-bit 9workstation operating system environments and the latest supported JDK level 9for each of them. For information about earlier JDK support, refer to the 9Java Application Development Web page at http://www.ibm.com/software/data/db2/udb/ad/v8/java/.

9 999999999999999999999999999999999999999999999999999999999999999
Table 1. DB2 supported environments with corresponding supported JDK levels
DB2 supported environment Latest supported JDK level
Windows IA/AMD 32-bit JDK 1.4.2
Windows IA 64-bit JDK 1.4.2
Windows AMD/EM64T 64-bit JDK 1.4.2
AIX(R) 4.3.3 32-bit JDK 1.3.1 SR6 [2]
AIX 5 (hybrid [1]) JDK 1.4.2
Solaris (hybrid [1]) JDK 1.4.2
HPUX RISC & Itanium (hybrid [1]) JDK 1.4.2.01
Linux AMD/EM64T 32-bit, 64-bit (hybrid [1]) JDK 1.4.2 [3]
Linux IA 32-bit JDK 1.4.2
Linux IA 64-bit JDK 1.4.2
Linux 390 31-bit JDK 1.4.2
Linux 390 64-bit JDK 1.4.2
Linux PPC (hybrid [1]) JDK 1.4.2
9 9
Notes:
9
    9
  1. Hybrid refers to an installation image that contains 32-bit and 964-bit support
  2. 9
  3. JDK 1.3.1 Service Release 6 is the only JDK version supported for AIX 94.3.3.
  4. 9
  5. There is no DB2 graphical user interface tools support on Linux AMD/EM64T 9(32-bit and 64-bit) with JDK 1.4.2.
  6. 9
9

An updated procedure for setting up the Linux Java Environment which is 9provided next.

9 9 9

Setting up the Linux Java environment

9
9Prerequisites 9

9
9
9Procedure 9

To build Java applications on Linux with DB2 JDBC support:

9
    9
  1. Install and configure one of the supported developer kits listed in the 9topic "Linux supported development software", which can be found in 9the Application Development Guide: Building and Running 9Applications Guide. 9

    To run Java stored procedures or user-defined 9functions, the Linux runtime linker must be able to access certain Java shared 9libraries, and DB2 UDB must be able to load both these libraries and the Java 9virtual machine. The process that runs stored procedures and user-defined 9functions loads libraries only in secure locations, as defined in the /etc/ld.so.conf file. One of these secure locations 9is /usr/lib. The remaining instructions show 9which libraries require symbolic links in /usr/lib.

  2. 9
  3. Create symbolic links in /usr/lib to point 9to the Java shared libraries. Depending on the JDK version that you are using, 9you will have link to different shared libraries: 9
    9
    For the IBM(R) Developer Kit 1.3
    9
    Create symbolic links to libjava.so, libjvm.so, and libhpi.so. You can 9create the symbolic links by running the following commands as root: 9
       cd /usr/lib
    9   ln -fs JAVAHOME/jre/bin/libjava.so .
    9   ln -fs JAVAHOME/jre/bin/classic/libjvm.so .
    9   ln -fs JAVAHOME/jre/bin/libhpi.so . 
    where JAVAHOME is 9the base directory for the IBM Developer Kit. If DB2 UDB cannot find these 9libraries, you will get a -4301 error when trying to run a Java routine, and 9there will be messages in the administration notification log about libraries 9not found. 9
    9
    For the IBM Developer Kit 1.4.1
    9
    Create symbolic links to libjava.so, libjvm.so, libhpi.so, and libjsig.so. 9You can create the symbolic links by running the following commands as root: 9
       cd /usr/lib
    9   ln -fs JAVAHOME/jre/bin/libjava.so
    9   ln -fs JAVAHOME/jre/bin/classic/libjvm.so
    9   ln -fs JAVAHOME/jre/bin/libhpi.so
    9   ln -fs JAVAHOME/jre/bin/libjsig.so
    where JAVAHOME is the 9base directory for the IBM Developer Kit. If DB2 UDB cannot find these libraries, 9you will get a -4301 error when trying to run a Java routine, and there will 9be messages in the administration notification log about libraries not found. 9
    9
    For the IBM Developer Kit 1.4.2
    9
    Create symbolic links to libjava.so, libjvm.so, libhpi.so, libjsig.so, 9libjitc.so, libxhpi.so, and libdbgmalloc.so . You can create the symbolic 9links by running the following commands as root: 9
      cd /usr/lib
    9  ln -fs JAVAHOME/jre/bin/libjava.so
    9  ln -fs JAVAHOME/jre/bin/classic/libjvm.so
    9  ln -fs JAVAHOME/jre/bin/libhpi.so
    9  ln -fs JAVAHOME/jre/bin/libjsig.so
    9  ln -fs JAVAHOME/jre/bin/libjitc.so
    9  ln -fs JAVAHOME/jre/bin/libxhpi.so
    9  ln -fs JAVAHOME/jre/bin/libdbgmalloc.so
    where JAVAHOME is 9the base directory for the IBM Developer Kit. If DB2 UDB cannot find these 9libraries, you will get a -4301 error when trying to run a Java routine, and 9there will be messages in the administration notification log about libraries 9not found. 9
    9
9
9Alternative procedure 9

Instead of explicitly creating links to the shared libraries in the /usr/lib directory, you can add the Java shared library 9names to the /etc/ld.so.conf file. If you add 9the Java shared library names to the /etc/ld.so.conf file, you must run the ldconfig command 9with root level access after you make your changes. If you encounter any 9problems with this alternative procedure, create the links in the /usr/lib directory as previously instructed.

Microsoft XP fix is needed on 64-bit operating systems

If you are using the Microsoft XP 64-bit operating system (2600) configured to use the NETBIOS protocol with the DB2 family of products, you need to obtain a hotfix from Microsoft. Contact Microsoft with the Knowledge Base article number Q317437.

2Windows XP operating systems

2The Windows XP Home Edition operating system is supported 2only by DB2 Universal Database (UDB) Personal Edition products.

2The Windows XP Professional operating system 2is supported by the following DB2 products:

9The following DB2 products are supported on Windows XP 9for development or test purposes only (production environments require Windows 2000 or Windows Server 2003):

8 8 8

DB2 UDB HADR separately priced option available

8

In DB2 Universal Database (UDB) Version 8.2, customers of DB2 UDB Workgroup 8Server Edition and DB2 UDB Express Edition (when licensed based on per user 8pricing model) were not able to install the DB2 UDB High Availability Disaster 8Recovery (HADR) separately priced option. This problem has been fixed in 8DB2 UDB Version 8.2 FixPak 1 (equivalent to Version 8.1 FixPak 8).

8 8 8

DB2 Warehouse Manager (Version 8.2) and IBM DB2 OLAP Server FP3 and later

8

The OLAP utilities in DB2 Warehouse Manager Standard Edition, Version 8.2 are 8not compatible with IBM DB2 OLAP Server FP3 (Essbase API level 6.5.4) 8and later. You are advised to use DB2 OLAP Server FP2 (Essbase 6.5.3) or earlier 8until this problem is resolved.

9 9 9

Raw I/O log enablement (Linux with 2.6 kernel)

9

To use logs with raw I/O devices prior to DB2 Universal Database (UDB) 9Version 8.2.2, it was necessary to bind a physical device to the Linux raw 9character device driver with the raw utility. 9 Starting with DB2 UDB Version 8.2.2 (equivalent 9to Version 8.1 FixPak 9), on the 2.6 Linux kernel, raw I/O for logs can be 9specified directly. DB2 9UDB will take advantage of a special open flag in the 2.6 kernel and enable 9raw I/O for logs by default. For example, to use device partition /dev/sdb1 for raw logs for the SAMPLE database, issue the following command:

9
db2 update db cfg for sample using newlogpath /dev/sdb1
9

The raw character driver is deprecated in the 2.6 kernel and may be removed 9from future kernels. In addition, Linux distributions might not include the 9driver in their default kernels.

9

Support for the special open flag in the 2.6 kernel to enable raw I/O for 9table spaces was previously added in Version 8.2.

8 8 8

Red Hat Linux support with the Data Warehouse Center

8

DB2 Universal Database, Version 8.2 supports Red Hat Enterprise Linux AS Versions 3 and 2.1. However, the Data Warehouse Center supports 8only Red Hat Enterprise Linux AS, Version 2.1. The Data Warehouse Center uses 8DataDirect ODBC drivers that do not support Red Hat Enterprise Linux AS, Version 83.1. Therefore, the Data Warehouse Center does not support ODBC warehouse 8sources and warehouse targets from a Red Hat Enterprise Linux AS, Version 83.1 agent site.

6 6 6

Alternative Unicode conversion tables for the coded character set identifier 6(CCSID) 5039

6

The Microsoft Japanese Windows Shift-JIS code page is registered 6as the IBM coded character set identifier (CCSID) 943. However, the Shift-JIS 6code page on HP-UX platform is registered as CCSID 5039. CCSID 5039 contains 6characters in the Japanese Industry Standard (JIS) only, and does not have 6any vendor defined characters. You can use a DB2 Universal Database (UDB) database of CCSID 5039 on HP-UX to store Shift-JIS characters, 6but there will be code page conversion between CCSID 5039 and CCSID 943. When 6using Microsoft ODBC applications, you might encounter a 6problem when converting data in CCSID 5039 to Unicode, due to differences 6between IBM's code page conversion table and Microsoft's code page conversion 6table.

6

The following list of characters, when converted from CCSID 5039 to Unicode, 6will result in different code points depending on which conversion table is 6used (IBM or Microsoft). For these characters, the IBM conversion table 6conforms to the Japanese Industry Standard JISX0208 and JISX0221.

6 66666666666666666666666666666666
Table 2. CCSID 5039 to Unicode code point conversion
Shift-JIS code point (character name) IBM primary code point (Unicode name) Microsoft primary code point (Unicode 6name)
X'815C' (EM dash) U+2014 (EM dash) U+2015 (Horizontal bar)
X'8160' (Wave dash) U+301C (Wave dash) U+FF5E (Fullwidth tilde)
X'8161' (Double vertical line) U+2016 (Double vertical line) U+2225 (Parallel to)
X'817C' (Minus sign) U+2212 (Minus sign) U+FF0D (Fullwidth hyphen-minus)
6

For example, the character EM dash with the CCSID 5039 code point of X'815C' 6is converted to the Unicode code point U+2014 when using the IBM conversion table, 6but is converted to U+2015 when using the Microsoft conversion table. This can create 6potential problems for Microsoft ODBC applications because they 6would treat U+2014 as an invalid code point. To avoid these potential problems, DB2 UDB 6provides the alternate Microsoft conversion table from CCSID 65039 to Unicode, in addition to the default IBM conversion table. You need to replace 6the default IBM conversion table with the alternate Microsoft conversion table. Note that 6the default IBM conversion table from Unicode to CCSID 5039 matches the Microsoft version.

6 6 6

Replacing the Unicode conversion tables for coded character set (CCSID) 65039 with the Microsoft conversion tables

6

When you convert from CCSID 5039 to Unicode, the DB2 Universal Database (UDB) default code page conversion table is used. If you want to use 6a different version of the conversion table, such as the Microsoft version, 6you must manually replace the default conversion table (.cnv) file.

6
6Prerequisites 6

Before replacing the existing code page conversion table file in the sqllib/conv directory, you should back up the file 6in case you want to change it back. On UNIX and Linux, the sqllib/conv directory is linked to the DB2 UDB installation path.

6
6Restrictions 6

For conversion table replacement to be effective, every DB2 UDB client that 6connects to the same database must have its conversion table changed. Otherwise, 6the different clients might store the same character using different code 6points.

6
6Procedure 6

To replace the DB2 UDB default conversion table for converting from CCSID 65039 to Unicode, follow these steps:

6
    6
  1. Copy sqllib/conv/ms/5039ucs2.cnv to sqllib/conv/5039ucs2.cnv
  2. 6
  3. Restart DB2 UDB.
6 6 6

Alternative Unicode conversion tables for the coded character set identifier 6(CCSID) 954

6

The IBM coded character set identifier (CCSID) for the Japanese EUC code 6page is registered as CCSID 954. CCSID 954 is a common encoding for Japanese UNIX and Linux platforms. When using Microsoft ODBC applications to connect 6to a DB2 Universal Database (UDB) database of CCSID 954, you 6might encounter a problem when converting data from CCSID 954 to Unicode. 6The potential problem is due to differences between IBM's code page conversion 6table and Microsoft's code page conversion table. The IBM conversion table 6conforms to the character names as specified in the Japanese Industry Standard 6(JIS) JISX0208, JISX0212, and JISX0221.

6

The following characters, when converted from CCSID 954 to Unicode, will 6result in different code points depending on whether the IBM or Microsoft conversion 6table is used.

6 6666666666666666666666666666666666666
Table 3. CCSID 954 to Unicode code point conversion
EUC-JP code point (character name) IBM primary code point (Unicode name) Microsoft primary code point (Unicode 6name)
X'A1BD' (EM dash) U+2014 (EM Dash) U+2015 (Horizontal Bar)
X'A1C1' (Wave dash) U+301C (Wave Dash) U+FF5E (Fullwidth Tilde)
X'A1C2' (Double vertical line) U+2016 (Double vertical line) U+2225 (Parallel To)
X'A1DD' (Minus sign) U+2212 (Minus sign) U+FF0D (Fullwidth hyphen-minus)
X'8FA2C3' (Broken bar) U+00A6 (Broken bar) U+FFE4 (Fullwidth broken bar)
6

For example, the character EM dash with the CCSID 954 code point of X'A1BD' 6is converted to the Unicode code point U+2014 when using the IBM conversion table, 6but is converted to U+2015 when using the Microsoft conversion table. Due to this 6difference of conversion mapping, you might have two different code points 6for the same character in a DB2 UDB Unicode database, or in a graphic 6column of a DB2 UDB 954 database. This can create potential problems for Microsoft ODBC 6applications because they would treat U+2014 as an invalid code point. To 6avoid these potential problems, DB2 UDB provides the alternate Microsoft conversion 6table from CCSID 954 to Unicode, in addition to the default IBM conversion table. 6You need to replace the default IBM conversion table with the alternate Microsoft conversion table. Note that the default IBM conversion table 6from Unicode to CCSID 954 matches the Microsoft version.

6 6 6

Replacing the Unicode conversion tables for coded character set (CCSID) 6954 with the Microsoft conversion tables

6

When you convert from CCSID 954 to Unicode, the DB2 Universal Database (UDB) default code page conversion table is used. If you want to use 6a different version of the conversion table, such as the Microsoft version, 6you must manually replace the default conversion table (.cnv) file.

6
6Prerequisites 6

Before replacing the existing code page conversion table file in the sqllib/conv directory, you should back up the file 6in case you want to change it back. On UNIX and Linux, the sqllib/conv directory is linked to the installation path of DB2 UDB.

6
6Restrictions 6

For this to be effective, every DB2 UDB client that connects to the same CCSID 6954 database must have its conversion table changed. If your client is Japanese Windows, whose ANSI code page is Shift-JIS (CCSID 943), you will also 6need to change the DB2 default conversion tables between CCSID 943 and Unicode 6to the Microsoft version. Otherwise, the different clients 6might store the same character using different code points.

6
6Procedure 6

To replace the DB2 UDB default conversion table for converting from CCSID 6954 to Unicode, follow these steps:

6
    6
  1. Copy sqllib/conv/ms/0954ucs2.cnv to sqllib/conv/0954ucs2.cnv
  2. 6
  3. Restart DB2 UDB.
6

To replace the DB2 UDB default conversion tables for converting between 6CCSID 943 and Unicode, follow these steps:

6
    6
  1. Copy sqllib/conv/ms/0943ucs2.cnv to sqllib/conv/0943ucs2.cnv
  2. 6
  3. Copy sqllib/conv/ms/ucs20943.cnv to sqllib/conv/ucs20943.cnv
  4. 6
  5. Restart DB2 UDB.
7 7 7

Alternative Unicode conversion tables for the coded character set identifier 7(CCSID) 943

7

When using the Microsoft Japanese Windows Shift-JIS 7code page that is registered as the IBM coded character set identifier (CCSID) 7943, you might encounter the following two problems when converting characters 7between CCSID 943 and Unicode. The potential problem is due to differences 7between the IBM and Microsoft code page conversion tables. To avoid these 7potential problems, DB2 Universal Database (UDB) provides the alternate Microsoft conversion tables between CCSID 943 and Unicode, in addition 7to the default IBM conversion tables.

7
7Problem 1 7

For historical reasons, over 300 characters in the CCSID 943 code page 7are represented by two or three code points each. The use of input method 7editors (IMEs) and code page conversion tables cause only one of these equivalent 7code points to be entered. For example, the lower case character for Roman 7numeral one 'i' has two equivalent code points: X'EEEF' and 7X'FA40'. Microsoft Windows IMEs always generate X'FA40' 7when 'i' is entered. In general, IBM and Microsoft use the same primary code point 7to represent the character, except for the following 13 characters:

7 77777777777777777777777777777777777777777777777777777777777777777777777777777
Table 4. CCSID 943 Shift-JIS code point conversion
Character name (Unicode code point) IBM primary Shift-JIS code point Microsoft primary Shift-JIS code point
Roman numeral one (U+2160) X'FA4A' X'8754'
Roman numeral two (U+2161) X'FA4B' X'8755'
Roman numeral three (U+2162) X'FA4C' X'8756'
Roman numeral four (U+2163) X'FA4D' X'8757'
Roman numeral five (U+2164) X'FA4E' X'8758'
Roman numeral six (U+2165) X'FA4F' X'8759'
Roman numeral seven (U+2166) X'FA50' X'875A'
Roman numeral eight (U+2167) X'FA51' X'875B'
Roman numeral nine (U+2168) X'FA52' X'875C'
Roman numeral ten (U+2169) X'FA53' X'875D'
Parenthesized ideograph stock (U+3231) X'FA58' X'FA58'
Numero sign (U+2116) X'FA59' X'8782'
Telephone sign (U+2121) X'FA5A' X'8754'
7

IBM products such as DB2 UDB primarily use IBM code points, such as X'FA4A' to 7present the upper case Roman numeral one 'I', but Microsoft products 7use X'8754' to represent the same character. An Microsoft ODBC 7application can insert the 'I' character as X'8754' into a DB2 UDB 7database of CCSID 943, and the DB2 UDB Control Center can insert the same 7character as X'FA4A' into the same CCSID 943 database. However, ODBC 7applications can find only those rows that have 'I' encoded as X'8754', 7and DB2 UDB Control Center can locate only those rows that have 'I' 7encoded as X'FA4A'. To enable DB2 UDB Control Center to select 'I' 7as X'8754', you need to replace the default IBM conversion tables between CCSID 943 and 7Unicode with the alternate Microsoft conversion tables.

7
7Problem 2 7

The following list of characters, when converted from CCSID 943 to Unicode, 7will result in different code points depending on whether the IBM conversion table 7or the Microsoft conversion table is used. For these characters, 7the IBM conversion table conforms to the Japanese Industry Standard JISX0208, 7JISX0212, and JISX0221.

7

7 7777777777777777777777777777777777777
Table 5. CCSID 943 to Unicode code point conversion
Shift-JIS code point (character name) IBM primary code point (Unicode name) Microsoft primary code point (Unicode 7name)
X'815C' (EM dash) U+2014 (EM dash) U+2015 (Horizontal bar)
X'8160' (Wave dash) U+301C (Wave dash) U+FF5E (Fullwidth tilde)
X'8161' (Double vertical line) U+2016 (Double vertical line) U+2225 (Parallel to)
X'817C' (Minus sign) U+2212 (Minus sign) U+FF0D (Fullwidth hyphen-minus)
X'FA55' (Broken bar) U+00A6 (Broken bar) U+FFE4 (Fullwidth broken bar)
7

For example, the character EM dash with the CCSID 943 code point of X'815C' 7is converted to the Unicode code point U+2014 when using the IBM conversion table. 7However, it is converted to U+2015 when using the Microsoft conversion 7table. Due to this difference of conversion mapping, you might have two different 7code points for the same character in a DB2 UDB Unicode database. This can create 7potential problems for Microsoft ODBC applications because they 7would treat U+2014 as an invalid code point. To avoid this potential problem, 7you need to replace the default IBM conversion tables between CCSID 943 and 7Unicode with the alternate Microsoft conversion tables.

7

The use of the alternate Microsoft conversion tables between CCSID 7943 and Unicode should be restricted to closed environments, where the DB2 UDB 7clients and the DB2 UDB databases all have a code page of CCSID 943 and 7are all using the same alternate Microsoft conversion tables. If you have 7a DB2 UDB client using the default IBM conversion tables, and another DB2 UDB client using 7the alternate Microsoft conversion tables, and both clients are inserting 7data to the same DB2 UDB database of CCSID 943, the same character may be 7stored as different code points in the database.

7 7 7

Replacing the Unicode conversion tables for coded character set (CCSID) 7943 with the Microsoft conversion tables

7

When you convert between CCSID 943 and Unicode, the DB2 Universal Database (UDB) default code page conversion tables are used. If you want to 7use a different version of the conversion tables, such as the Microsoft version, 7you must manually replace the default conversion table (.cnv) files.

7
7Prerequisites 7

Before replacing the existing code page conversion table files in the sqllib/conv directory, you should back up the files 7in case you want to change them back. On UNIX and Linux, sqllib/conv is linked to the DB2 UDB installation path.

7
7Restrictions 7

For conversion table replacement to be effective, every DB2 UDB client that 7connects to the same database must have its conversion table changed. Otherwise 7the different clients might store the same character using different code 7points.

7
7Procedure 7

To replace the DB2 UDB default conversion tables for converting characters 7between CCSID 943 and Unicode:

7
    7
  1. Copy sqllib/conv/ms/0943ucs2.cnv to sqllib/conv/0943ucs2.cnv.
  2. 7
  3. Copy sqllib/conv/ms/ucs20943.cnv to sqllib/conv/ucs20943.cnv.
  4. 7
  5. Restart DB2 UDB.

MVS operating system is not supported

Despite being mentioned in the documentation, the MVS operating system is no longer supported by DB2 Universal Database. MVS has been replaced with z/OS.

Backup and restore operations (Linux 390)

Backup and restore operations to and from multiple tape devices might not work if you are using the Linux 390 operating system.

2 2 2

Enabling view docking when accessing the Development Center with Hummingbird Exceed

2

When accessing the Development Center on UNIX with Hummingbird Exceed, 2the XTEST extension version 2.2 must be enabled before you can move and dock 2views by dragging their title bars within the Development Center.

2

To enable the XTEST extension:

2
    2
  1. From the Start menu, select Programs -> Hummingbird Connectivity 7.0 -> Exceed -> XConfig. The XConfig window opens.
  2. 2
  3. Optional: If your configuration requires a password, enter the XConfig 2password.
  4. 2
  5. Double click the Protocol icon. The Protocol window 2opens.
  6. 2
  7. Select the X Conformance Test Compatibility checkbox.
  8. 2
  9. In the Protocol window, click the Extensions... button. The Protocol Extensions window opens.
  10. 2
  11. In the Enable Extensions list, select the XTEST(X11R6) checkbox.
  12. 2
  13. Click OK.
[ Top of page |Previous page | Next page | Contents ]