Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: OCIReset() always fails

Re: OCIReset() always fails

From: Dave Hau <davehau_nospam_123_at_nospam_netscape.net>
Date: Fri, 06 Jun 2003 19:47:33 GMT
Message-ID: <3EE0EFD4.9000309@nospam_netscape.net>

Knut Stolze wrote:

> Dave Hau wrote on Friday 06 June 2003 17:24:
> 
> 

>>Try patching your OCI library to 8.1.7.4.
>>
>>In the list of bugs fixed for 8.1.7.4, I see this bug:
>>
>> 8174 2265777 OCIBreak() -> OCIReset() does not close the cursor (can
>>lead to ORA-1000)
> 
> 
> Thanks, I'll see if the patch can be applied and then try again.
> 
> 

>>1. OCIHandleAlloc(stmthp)
>>2. OCIStmtPrepare(stmthp)
>>3. OCIStmtExecute(stmthp)
>>4. OCIBreak(svchp)
>>5. OCIReset(svchp)
>>4. OCIHandleFree(stmthp)
>>5. OCITransCommit()
>>6. go back to 1.
>>
>>The cursor opened at 3 won't close until session is terminated.
> 
> 
> Is there, by any chance, an explicit way to close the cursor before or after
> the OCIBreak()?  I hope I could use that as an interim work-around.


Try calling OCIStmtFetch() with the nrows parameter set to zero. This should cancel the cursor:

http://download-west.oracle.com/docs/cd/A87860_01/doc/appdev.817/a76975/oci15rel.htm#445550

Cheers,
Dave Received on Fri Jun 06 2003 - 14:47:33 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US