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

SQLExecute in CLI returns SQL401N for comparison operators when using
deferred prepare against a non-unicode target database

product:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problem description:
SQL401N is returned when all of the following conditions are 
satisfied: 
(1) Registry variable DB2_DEFERRED_PREPARE_SEMANTICS=YES or 
DB2_COMPATIBILITY_VECTOR=ORA has been set 
(2) target database is a non-unicode database 
(3) SQLExecute in CLI is preparing a statement with a comparison 
operator 
(4) One operand of the comparison operator mentioned in (3) is a 
parameter marker and C type/data used is double byte. 
 
(5) The other operand of the comparison operator in (3) resolves 
to type CHAR or VARCHAR
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* DB2 UDB Version 9.7                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* SQL401N is returned when all of the following conditions     * 
* aresatisfied:(1) Registry variable                           * 
* DB2_DEFERRED_PREPARE_SEMANTICS=YES                           * 
* orDB2_COMPATIBILITY_VECTOR=ORA has been set(2) target        * 
* database is a non-unicode database(3) SQLExecute in CLI is   * 
* preparing a statement with acomparisonoperator(4) One        * 
* operand of the comparison operator mentioned in (3)is        * 
* aparameter marker and C type/data used is double byte.(5)    * 
* The other operand of the comparison operator in              * 
* (3)resolvesto type CHAR or VARCHAR                           * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to Version 9.7 FixPack 2.                            * 
****************************************************************
Local Fix:
(1) Issue "db2set DB2_DEFERRED_PREPARE_SEMANTICS=NO", or 
(2) Use single byte data instead of double byte data in the 
application. For example, if you are using UCS-2 data and 
SQL_C_WCHAR C_Type, switch to using Unicode 1208 codepage and 
data,  and SQL_C_CHAR C_Type in the application.
available fix packs:
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3a for Linux, UNIX, and Windows
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 9a 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 10 for Linux, UNIX, and Windows

Solution
Problem was first fixed in DB2 UDB Version 9.7 FixPack 2.
Workaround
(1) Issue "db2set DB2_DEFERRED_PREPARE_SEMANTICS=NO", or 
 
 
(2) Use single byte data instead of double byte data in the 
application. For example, if you are using UCS-2 data and 
 
SQL_C_WCHAR C_Type, switch to using Unicode 1208 codepage and 
 
data, and SQL_C_CHAR C_Type in the application.
BUG-Tracking
forerunner  : APAR is sysrouted TO one or more of the following: IC67248 
follow-up : 
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
10.03.2010
31.05.2010
31.05.2010
Problem solved at the following versions (IBM BugInfos)
9.7.FP2
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.2 FixList