DB2 - Problem description
| Problem IC93000 | Status: Closed |
OCISTMTEXECUTE() MAY GET OCI_NEED_DATA ERROR | |
| product: | |
DB2 FOR LUW / DB2FORLUW / A10 - DB2 | |
| Problem description: | |
OCISTMTEXECUTE with OCIBindDynamic may fail in the following
reason.
The current DB2CI driver is not reusing the data specified via
OCIBindDynamic when a place holder is used more than once in an
SQL statement.
example)
The following sql has :varname and it is binded using
OCIBindDynamic
select * from t where c1 = :varname and c2 = :varname
And the following kind of error occurs.
OCI8 DEBUG: OCIStmtExecute at
(/usr/src/redhat/BUILD/oci8-1.4.9/oci8_statement.c:472)
OCI8 DEBUG
(/usr/src/redhat/BUILD/oci8-1.4.9/oci8.c:2006:php_oci_error)
OCI_NEED_DATA
And you can observe the error in OCI trace.
OCIBindByName( bind=&00002b88f6842c10 )
<--- OCI_SUCCESS Time elapsed - +7.600000E-005 seconds
OCIBindDynamic( bindp=&00002b88f6842c10,
errhp=&00002b88f6879680, ictxp=&000000000380b0b8,
icbfp=&00002b88ee1cbe70, octxp=&000000000380b0b8,
ocbfp=&00002b88ee1d17a0 )
---> Time elapsed - +1.370000E-004 seconds
OCIBindDynamic( )
<--- OCI_SUCCESS Time elapsed - +2.600000E-005 seconds
OCIAttrGet( hHandle=&00002b88f683f640,
fHandleType="OCI_HTYPE_STMT", pValue=&000000000380b65e,
pcbValue=<NULL pointer>, fAttribute="24",
hError=&00002b88f6879680 )
---> Time elapsed - +3.300000E-005 seconds
OCIAttrGet( pValue=1 )
<--- OCI_SUCCESS Time elapsed - +5.270000E-004 seconds
OCIStmtExecute( hSvc=&00002b88f683c6c0, hStmt=&00002b88f683f640,
hError=&00002b88f6879680, rows=0, offset=0, snapshot1=<NULL
pointer>, snapshot2=<NULL pointer>, mode=0 )
---> Time elapsed - +1.500000E-005 seconds
( Row=1, Par=1, fCType=1, OCIType=1, fSQLType=12, cbValue=-2 )
( Row=1, Par=2, fCType=1, OCIType=1, fSQLType=12, cbValue=-2 )
( Row=1, Par=3, fCType=1, OCIType=1, fSQLType=12, cbValue=-2 )
OCIStmtExecute( )
<--- OCI_NEED_DATA Time elapsed - +4.750000E-004 seconds | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * User using DB2CI driver. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Version 10.1 Fix Pack 3. * **************************************************************** | |
| Local Fix: | |
Not available. | |
| available fix packs: | |
DB2 Version 10.1 Fix Pack 3 for Linux, UNIX, and Windows | |
| Solution | |
Problem was first fixed in DB2 UDB Version 10.1 Fix Pack 3. | |
| Workaround | |
Not available. | |
| BUG-Tracking | |
forerunner : APAR is sysrouted TO one or more of the following: IC96563 follow-up : | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 12.06.2013 12.11.2013 12.11.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 |
|
| 10.1.0.3 |
|