DB2 - Problem description
Problem IC78215 | Status: Closed |
ALTER FOR BIT DATA COLUMN DATA TYPE TO CHAR OR VARCHAR CHANGES COLUMN CODEPAGE | |
product: | |
DB2 FOR LUW / DB2FORLUW / 970 - DB2 | |
Problem description: | |
Altering a FOR BIT DATA column data type to CHAR or VARCHAR unexpectedly changes the column codepage from 0 to the database codepage. For example: CREATE TABLE T ( C CHAR(5) FOR BIT DATA ) SELECT CODEPAGE FROM SYSCAT.COLUMNS WHERE COLNAME='C' AND TABNAME='T' CODEPAGE -------- 0 1 record(s) selected. ALTER TABLE T ALTER COLUMN C SET DATA TYPE CHAR(8) SELECT CODEPAGE FROM SYSCAT.COLUMNS WHERE COLNAME='C' AND TABNAME='T' CODEPAGE -------- 1208 1 record(s) selected. The expected behaviour is that the FOR BIT DATA attribute is maintained and the codepage remains 0. It is not possible to alter a FOR BIT DATA column to CHAR or VARCHAR without FOR BIT DATA. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * Altering a FOR BIT DATA column data type to CHAR or VARCHAR * * * * unexpectedly changes the column codepage from 0 to the * * database * * codepage. For example: * * * * * * * * CREATE TABLE T ( C CHAR(5) FOR BIT DATA ) * * * * * * * * SELECT CODEPAGE FROM SYSCAT.COLUMNS WHERE COLNAME='C' AND * * * * TABNAME='T' * * * * * * * * CODEPAGE * * * * -------- * * * * 0 * * * * * * * * 1 record(s) selected. * * * * * * * * ALTER TABLE T ALTER COLUMN C SET DATA TYPE CHAR(8) * * * * * * * * SELECT CODEPAGE FROM SYSCAT.COLUMNS WHERE COLNAME='C' AND * * * * TABNAME='T' * * * * * * * * CODEPAGE * * * * -------- * * * * 1208 * * * * * * * * 1 record(s) selected. * * * * * * * * The expected behaviour is that the FOR BIT DATA attribute is * * * * maintained and the codepage remains 0. * * * * It is not possible to alter a FOR BIT DATA column to CHAR or * * * * VARCHAR without FOR BIT DATA. * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 Version 9.7 Fix Pack 5 * **************************************************************** | |
Local Fix: | |
When altering a FOR BIT DATA column data type, ensure the FOR BIT DATA clause is specified, e.g.: ALTER TABLE T ALTER COLUMN C SET DATA TYPE CHAR(8) FOR BIT DATA. | |
available fix packs: | |
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows | |
Solution | |
Problem first fixed in DB2 Version 9.7 Fix Pack 5 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 18.08.2011 08.11.2011 08.11.2011 |
Problem solved at the following versions (IBM BugInfos) | |
9.7.FP5 | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.7.0.5 |