Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: ORA-03106
Yass,
We have solved the problem using reference cursors. There is a BUG in 8i which is as follows:
OLIB bug with Oracle 8i
When binding buffers to PL/SQL code using OCIBindByName (and possibly with OCIBindByPos), certain structures produce the ORA-03106 error.
PL/SQL code blocks which do not contain any placeholders of type REF CURSOR
work OK.
When there is one or more REF CURSOR placeholder, the error occurs when an
lvalue placeholder of another type (eg NUMBER) appears before the REF CURSOR
placeholders in the code.
Examples of code which produces the error: Example 1
Example 4
temp := :p0 open :r0 for select 1 cola from dual; open :r1 for select 1 cola from dual;
![]() |
![]() |