This content has been marked as final. Show 5 replies
I think that you should use : sizeof(data).
I've also tried 'sizeof data' or 'sizeof OCINumber' with the same result - oracle exception '01458' thrown.
from Oracle metalink I got the following OCIBind sample message:
/* Initialise the OCINumber variable even though it is an output variable. Failure to do this results in: ORA-1458 invalid length inside variable character string since OCINumber is effectively a VarNumber (hence the bind type of SQLT_VNU). */
OCINumberFromInt(errhp,&tmp, sizeof(tmp),OCI_NUMBER_UNSIGNED, &result));
OCIBindByName(stmthp1,&bnd2p,errhp, (text *) ":result", -1,
(dvoid *)(sb4) sizeof(OCINumber),
SQLT_VNU,(dvoid *) 0, (ub2 *) 0,
(ub2 *) 0,(ub4) 0, (ub4 *) 0,
Maybe this can be usefull to you.
thx - I'll try it tomorrow. Could you tell me how I can access the Oracle metalink (I don't know it)?
Until now - I'm using the OCI programmer's guide.
The oracle metalink site is :