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 IC91734 Status: Closed

DECIMAL VALUES ARE INCORRECTLY RETURNED BY A STORED PROCEDURE

product:
DB2 FOR LUW / DB2FORLUW / A10 - DB2
Problem description:
if you have LANG set to a locale that uses a character other 
than '.' as the decimal point, the decimal values returned by a 
stored procedure are incorrect. 
 
example : 
 
more repro.sql : 
 
create table t1  (c1 real); 
insert into t1 values (1) 
; 
 
 
CREATE PROCEDURE sp1 ( IN stmt1 VARCHAR(4000) ) 
    SPECIFIC sp1 
    RESULT SETS 1 
    LANGUAGE SQL 
P1: BEGIN 
    DECLARE c1 CURSOR WITH RETURN FOR s1 
    PREPARE s1 FROM stmt1 
    OPEN c1 
END P1 
; 
call sp1('select * from t1'); 
select * from t1; 
 
 
export LANG=fr_FR.ISO8859-1 
db2start 
db2 create database sample 
 
db2 -tvf sp1.sql 
.... 
call sp1('select * from sp1_t1') 
 
 
  Ensemble de rツsultats 1 
  -------------- 
 
  C_REAL 
  ------------------------ 
             +0,00000E+000 
 
  1 enregistrement(s) sツlectionnツ(s). 
 
  Etat du retour = 0 
 
select * from sp1_t1 
 
C_REAL 
------------------------ 
           +1,00000E+000 
 
  1 enregistrement(s) sツlectionnツ(s). 
 
The same problem could also be seen if a stored procedure has 
output parameters of type Real. 
e.g: 
db2 "create table sp3_t1(c_real real)"; 
db2 "insert into sp3_t1 values(3.787878)" 
db2 "CREATE PROCEDURE sp3 (  out outcol real ) 
            SPECIFIC sp3 
            RESULT SETS 1 
            LANGUAGE SQL 
 
        P1: BEGIN 
            Select c_real into outcol from sp3_t1;-- 
        END P1" 
 
 
db2 "call sp3(?)" 
 
  Value of output parameters 
  -------------------------- 
  Parameter Name  : OUTCOL 
  Parameter Value : +0,00000E+000 
 
  Return Status = 0 
 
db2 "select * from sp3_t1" 
 
C_REAL 
------------------------ 
           +3,78788E+000 
 
  1 record(s) selected.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All Db2 Users who uses CLP                                   * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to db2_v101fp3 or later                              * 
****************************************************************
Local Fix:
available fix packs:
DB2 Version 10.1 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 10.1 Fix Pack 6 for Linux, UNIX, and Windows

Solution
Problem fixed in db2_v101fp3
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
22.04.2013
26.10.2013
26.10.2013
Problem solved at the following versions (IBM BugInfos)
Problem solved according to the fixlist(s) of the following version(s)
10.1.0.3 FixList
10.1.0.3 FixList