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

PARAMETER MARKER FOR AN ARRAY TYPE IN AN ANONYMOUS BLOCK FAILS WITH
SQL0408N

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
An SQL0408N error is returned when a parameter marker is used in 
an anonymous block to pass a value with an array data type. 
Here is an example where the parameter marker in the anonymous 
block is input to a procedure in a CALL statement, though the 
error will be reported no matter how the parameter marker is 
used: 
 
create type myarray as integer array[10] 
DB20000I  The SQL command completed successfully. 
 
create procedure myproc (in p1 myarray) 
begin end 
DB20000I  The SQL command completed successfully. 
 
create procedure myproc2() 
begin 
  declare v1 myarray; -- 
  prepare st from 'begin call myproc(cast (? as myarray)); end'; 
-- 
  execute st using v1; -- 
end 
DB20000I  The SQL command completed successfully. 
 
call myproc2() 
SQL0408N  A value is not compatible with the data type of its 
assignment 
target. Target name is "?".  LINE NUMBER=1.  SQLSTATE=42821
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All users of DB2 LUW version 9.7 up to and including fix     * 
* pack 4.                                                      * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* An SQL0408N error is returned when a parameter marker is     * 
* used in                                                      * 
* an anonymous block to pass a value with an array data type.  * 
*                                                              * 
* Here is an example where the parameter marker in the         * 
* anonymous                                                    * 
* block is input to a procedure in a CALL statement, though    * 
* the                                                          * 
* error will be reported no matter how the parameter marker is * 
*                                                              * 
* used:                                                        * 
*                                                              * 
*                                                              * 
*                                                              * 
* create type myarray as integer array[10]                     * 
*                                                              * 
* DB20000I  The SQL command completed successfully.            * 
*                                                              * 
*                                                              * 
*                                                              * 
* create procedure myproc (in p1 myarray)                      * 
*                                                              * 
* begin end                                                    * 
*                                                              * 
* DB20000I  The SQL command completed successfully.            * 
*                                                              * 
*                                                              * 
*                                                              * 
* create procedure myproc2()                                   * 
*                                                              * 
* begin                                                        * 
*                                                              * 
*   declare v1 myarray; --                                     * 
*                                                              * 
*   prepare st from 'begin call myproc(cast (? as myarray));   * 
* end';--                                                      * 
*                                                              * 
*   execute st using v1; --                                    * 
*                                                              * 
* end                                                          * 
*                                                              * 
* DB20000I  The SQL command completed successfully.            * 
*                                                              * 
*                                                              * 
*                                                              * 
* call myproc2()                                               * 
*                                                              * 
* SQL0408N  A value is not compatible with the data type of    * 
* its                                                          * 
* assignment target. Target name is "?".  LINE NUMBER=1.       * 
* SQLSTATE=42821                                               * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 LUW version 9.7 fix pack 5                    * 
****************************************************************
Local Fix:
There is not a local fix for this problem.  The parameter marker 
representing an array data type must be removed from the 
anonymous block for execution of the anonymous block to succeed.
available fix packs:
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
Workaround
not known / see Local fix
Comment
Fix release: DB2 LUW version 9.7 fix pack 5 
Fix commitment level: 999
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
07.07.2011
08.12.2011
08.12.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 FixList