This discussion is archived
3 Replies Latest reply: Oct 10, 2012 10:33 AM by 813259 RSS

oracle::occi::Statement::setVector() throws OCI-22303: type not found

813259 Newbie
Currently Being Moderated
Hi everyone!

Context:

schema owner: USER1
logged in as user1: CREATE OR REPLACE TYPE BLABLABLA AS TABLE OF VARCHAR2(8)

in my app:
oracle::occi::Statement::setVector(stmt,index,strVector,"USER1.BLABLABLA")

If I run my app (logged in as USER1 or USER2) --> OCI-22303: type ""."USER1.BLABLABLA" not found

If I change the type name in setVector to "BLABLABLA" then everything works fine when logged in as USER1 (the owner) but OCI-22303: type ""."BLABLABLA" not found error occurs when logged in as USER2. In production, I must run my app with a "no owner" user.

I noticed the "" in the error message (maybe this is the missing schema name... I can't find how to specify it)

Somebody can help me?

Thanks in advance!

Best regards

Edit: I forgot to say that I already granted execute on BLABLABLA to USER2

Edited by: PabloCaballero on 06-oct-2012 19:36

Edit Solved:
There are several overloaded setVector functions with the schemaName parameter. The first google result for "occi classes" is http://docs.oracle.com/cd/B10501_01/appdev.920/a96583/cci08r20.htm#1107159 wich is very old.

Edited by: PabloCaballero on 10-oct-2012 10:28

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points