OCI, dynamic SQL statements, and ORA-03106 [message #94188] |
Fri, 30 April 2004 07:32 |
Nathan Christiansen
Messages: 3 Registered: April 2004
|
Junior Member |
|
|
I wrote a test OCI program in C that ran very well. The SQL started "select customerid from ...". I made the call to OCIDefineByPos before the call to OCIStmtExecute and it worked well.
When I changed the SQL to start "select * from ...", I had to change the code to make the OCIDefineByPos calls after the call to OCIStmtExecute. When I did this, I suddenly got a "ORA-03106: fatal two-task communication protocol error" error code from OCIStmtExecute.
My specs:
Fedora Linux Core 1 (Kernel: 2.4.22-1.2188)
Oracle Client version: 9.2.0.1.0
Oracle Server version: Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
I can post source if needed.
|
|
|
|
|
|
Re: OCI, dynamic SQL statements, and ORA-03106 [message #94361 is a reply to message #94188] |
Thu, 02 September 2004 12:18 |
Nathan Christiansen
Messages: 3 Registered: April 2004
|
Junior Member |
|
|
I am sorry for the late message to follow up, but I found my problem and fixed it the day after my original post.
I was trying to minimize the number of files I needed to copy into production by only including the files my application was using. (The Oracle OCI C client includes a lot of stuff, and I didn't want the 190MB+ Linux OCI client on the production server.)
When I decided to set the ORACLE_HOME value to the Oracle Client install directory, I suddenly got another error (a different ORA-????? error message, which I can't now remember).
This new error message told me the correct problem (trying to bind SQL NULL values) and I was able to find a solution rather quickly from Internet searches and the OCI documentation. (The fix was to use indicator variables).
|
|
|
Re: OCI, dynamic SQL statements, and ORA-03106 [message #94439 is a reply to message #94361] |
Fri, 29 October 2004 12:36 |
Raj
Messages: 411 Registered: November 1998
|
Senior Member |
|
|
Nathan,
We are running into a similar situation where the actual cause of the error is obscured with the ORA-03106 error message. Could you post the way how you came about identifying the error condition. We would if applicable, try the same.
RB.
|
|
|