home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC74270 Status: Closed

DB2 MIGHT NOT RETURN EXPECTED RESULTS FOR SCALE FUNCTIONS WITH SMALLINT
INPUT.

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
DB2 might return an error message or incorrect results when 
scale function (LEFT, RIGHT, OVERLAY, INSERT) are used with 
SMALLINT as inputs. 
 
For example, although correct, following query might return 
error code SQL0138N: 
 
SELECT LEFT('002', SMALLINT(2)) FROM SYSIBM.SYSDUMMY1 
 
SQL0138N  A numeric argument of a built-in string function is 
out of range. 
SQLSTATE=22011
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All the user of DB2 v9.7 FP3 and earlier.                    * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* DB2 might return an error message or incorrect results when  * 
*                                                              * 
* scale function (LEFT, RIGHT, OVERLAY, INSERT) are used with  * 
*                                                              * 
* SMALLINT as inputs.                                          * 
*                                                              * 
*                                                              * 
*                                                              * 
* For example, although correct, following query might return  * 
*                                                              * 
* error code SQL0138N:                                         * 
*                                                              * 
*                                                              * 
*                                                              * 
* SELECT LEFT('002', SMALLINT(2)) FROM SYSIBM.SYSDUMMY1        * 
*                                                              * 
*                                                              * 
*                                                              * 
* SQL0138N  A numeric argument of a built-in string function   * 
* is                                                           * 
* out of range.                                                * 
*                                                              * 
* SQLSTATE=22011                                               * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Explicitly cast the small int as integer.                    * 
*                                                              * 
*                                                              * 
* eg. db2 "SELECT LEFT('002', cast(SMALLINT(2) as integer))    * 
* FROM                                                         * 
* SYSIBM.SYSDUMMY1";                                           * 
*                                                              * 
* Also consider upgrade to DB2 v9.7 FP4.                       * 
****************************************************************
Local Fix:
Explicitly cast the small int as integer. 
 
eg. db2 "SELECT LEFT('002', cast(SMALLINT(2) as integer)) FROM 
SYSIBM.SYSDUMMY1";
available fix packs:
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Solution
Problem was fixed in DB2 v9.7 FP4.
Workaround
not known / see Local fix
BUG-Tracking
forerunner  : APAR is sysrouted TO one or more of the following: IC74272 
follow-up : 
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
07.02.2011
28.04.2011
28.04.2011
Problem solved at the following versions (IBM BugInfos)
9.7.FP4
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.4 FixList