3 Replies Latest reply: Oct 10, 2012 12:33 PM by 813259 RSS

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

    813259
      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