DB2 - Problem description
Problem IC95427 | Status: Closed |
CLI0143E ON SQLBINDPARAMETER FOR TIMESTAMP or TIMESTAMP WITH TIMEZONE TYPE WITH CBCOLDEF=-1 | |
product: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problem description: | |
After upgrading the client from v9.1 or v9.5 to version v9.7 or v10.1 a CLI application can report CLI0143E during execution of the API SQLBindParameter for the type TIMESTAMP or TIMESTAMP WITH TIMEZONE TYPE WITH if a value for cbColDef is -1. Here is reproduction testscript (inout for db2cli.exe executable located under <instpath>\BIN: Test case for TIMESTAMP opt calldiag on opt echo on quickc 1 1 sample SQLAllocStmt 1 1 getmem 1 1 SQL_C_TYPE_TIMESTAMP getmem 1 2 SQL_C_TYPE_TIMESTAMP updatemem 1 SQL_C_TIMESTAMP value 2004 05 18 12 31 57 000000000 updatemem 2 SQL_C_TIMESTAMP NULL_VALUE SQLBindParameter 1 1 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP 16 0 1 SQLBindParameter 1 2 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP -1 0 2 Last statement in the script is failing with error: > SQLBindParameter 1 2 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP -1 0 2 SQLBindParameter 1 2 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP -1 0 2 SQLBindParameter: rc = -1 (SQL_ERROR) SQLError: rc = 0 (SQL_SUCCESS) SQLGetDiagRec: SQLState : S1104 fNativeError : -99999 szErrorMsg : [IBM][CLI Driver] CLI0143E Invalid precision value. SQLSTATE=S1104 cbErrorMsg : 67 > Test case for TIMESTAMP WITHTIMEZONE TYPE WITH opt calldiag on opt echo on #quickc 1 1 CLIDBU quickc 1 1 ec203 newton C0rndaw9 SQLAllocStmt 1 1 sqlexecdirect 1 "create table BLAH.TAB_DT2 (c1 timestamp,c2 timestamp(12), c3 timestamp with time zone)" -3 #sqlprepare 1 "insert into BLAH.TAB_DT2 values(?,?,?,?,?)" -3 getmem 1 1 SQL_C_TYPE_TIMESTAMP getmem 1 2 SQL_C_TYPE_TIMESTAMP getmem 1 3 SQL_C_TYPE_TIMESTAMP_EXT_TZ updatemem 1 SQL_C_TIMESTAMP value 2013 02 18 12 31 57 000000000 updatemem 2 SQL_C_TIMESTAMP NULL_VALUE updatemem 3 SQL_C_TYPE_TIMESTAMP_EXT_TZ value 2000 01 01 11 12 13 123456789 0 +08 30 SQLBindParameter 1 1 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP 16 0 1 SQLBindParameter 1 2 SQL_PARAM_INPUT SQL_C_TIMESTAMP SQL_TYPE_TIMESTAMP 10 0 2 sqlbindparameter 1 3 sql_param_input SQL_C_TYPE_TIMESTAMP_EXT_TZ SQL_TYPE_TIMESTAMP_WITH_TIMEZONE -1 0 3 sqlprepare 1 "insert into BLAH.TAB_DT2 values(?,?,?)" -3 sqlexecute 1 sqlexecdirect 1 "select * from BLAH.TAB_DT2" -3 fetchall 1 sqltransact 1 1 sql_rollback sqlfreestmt 1 sql_close sqlfreestmt 1 sql_drop killenv 1 The same testcript completes without error when using v9.1 and v9.5 client. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All DB2 CLI Users * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * upgrade to v10.5.3 and later * **************************************************************** | |
Local Fix: | |
available fix packs: | |
DB2 Cancun Release 10.5.0.4 (also known as Fix Pack 4) for Linux, UNIX, and Windows | |
Solution | |
Fixed in v10.5.3 and later | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 27.08.2013 09.09.2014 09.09.2014 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
10.5.0.4 |