DB2 Version 8 Upgrade

What’s new in DB2 Version 8?

To see the new features in DB2 Version 8, click here.

DB2 Version 8 migration plan

DB2 Version 8 consists of three migration modes. CIT will perform the migration in two phases. Phase I will be the migration to compatibility mode, and phase II will be the migration to production mode, which includes enabling-new-function mode and new-function mode.

Compatibility mode

All catalog and directory table spaces are encoded in EBCDIC, allowing the Version 8 subsystem to coexist with Version 7 subsystems. This mode does not enable new Version 8 functions.

Enabling-new-function mode

Catalog and directory table spaces are in either EBCDIC or Unicode UTF-8. Some table spaces remain in EBCDIC because they have not yet been converted to Unicode. This mode is the transitional period between encoding schemes. A DB2 subsystem that is in this mode cannot coexist with nor fall back to Version 7. This mode supports only a limited set of Version 8 functions to support the enabling process.

New-function mode

The following directory table spaces remain in EBCDIC in new-function mode:
  • SYSIBM.SYSCOPY
  • SYSIBM.SYSEBCDIC

All other catalog and directory table spaces are encoded in Unicode. A DB2 subsystem that is in this mode cannot coexist with nor fall back to Version 7. Additionally, a DB2 subsystem that is in this mode cannot coexist with nor return to Version 8 compatibility mode. New-function mode enables all new Version 8 functions. To disable Version 8 functionality, you can toggle between new-function mode and enabling-new-function mode, but you cannot backout the processing that originally occurred in enabling-new-function mode.

DB2 Version 8 manuals

To see the DB2 Version 8 manuals in PDF format, click here.

Known issues

  • Customers that compile C or C++ programs that contain DB2 SQL statements must add the following option to the DB2 SQL Precompiler step in order to prevent a DSNH007I error (ILLEGAL CHARACTER IGNORED) from occurring:

      PCOPT=CCSID(1047)

  • A null indicator is used to indicate whether the host variable has been assigned a null value. Prior to Version 8, DB2 checked the null indicator before looking at the data type. In Version 8, DB2 checks the data type first, and if there is a data type mismatch, customers may receive the following message even if a null is passed:

      SQLCODE -301
      (THE VALUE OF INPUT HOST VARIABLE OR PARAMETER NUMBER position-number CANNOT BE USED AS SPECIFIED BECAUSE OF ITS DATA TYPE)

    If an application receives SQLCODE -301, the customer should modify the source code to avoid passing a null value.


  • If you are pre-compiling a COBOL/DB2 program, your JCL must include a HOST parameter and the value must be IBMCOB. For example:

      PARM='HOST(IBMCOB)...'