Compile error "table or view does not exist"

When I run the following code, I get a compile error:
Error(5,33): PL/SQL: ORA-00942: table or view does not exist
I can run the select statement by itself as an SQL query, so why does this not work in PL/SQL?
CREATE OR REPLACE
PROCEDURE PREPTEST AS
BEGIN
    FOR rec IN (SELECT rep_id FROM diag.diag_rep )
    LOOP
      DBMS_OUTPUT.PUT_LINE(' record ID is ' || rec.rep_id);
    END LOOP;
END;

Within SQL the permissions can be taken from the Role that the user has.
Within PL/SQL permissions are not taken from Roles and have to be explicitly granted to the user.
GRANT the appropriate permissions to the user and the PL/SQL code will work.

Similar Messages

  • XML mapping  error table or view does not exist

    Hi Friends,
    I am using ODI 11g.
    I am facing a error while working on XML to ORACLE mapping,
    My source table name is Employee and Target table name is Copy Of Employee.I dont hv any join condition.
    ORA-00942: table or view does not exist
    and
    select     SYS_GUID(),
         2883011,
         rowid,
         'F',
         *'ODI-15065: Join error (TABLE__EMPLOYEE) between the table Copy of EMPLOYEE and the table TABLE_.',*
    *     sysdate,*
    *     '(237011)ODI_Test.INT_XML_TEST',*
    *     'TABLE__EMPLOYEE',*     'FK',     
         EMPLOYEEORDER,
         EMPLOYEE_KEY,
         EMPLOYEE_KEYORDER,
         HIRE_DT,
         HIRE_DTORDER,
         MGR_ID,
         MGR_IDORDER,
         MGR_NAME,
         MGR_NAMEORDER,
         NAME,
         NAMEORDER,
         POSTN,
         POSTNORDER,
         SVISOR_ID,
         SVISOR_IDORDER,
         SVISOR_NAME,
         SVISOR_NAMEORDER,
         TABLE_FK,
         TYPE_,
         TYPE_ORDER
    from     EDGE_DEV_OWNER."I$_Copy of EMPLOYEE" EMPLOYEE
    where      (
              EMPLOYEE.TABLE_FK
         ) not in      (
              select      TABLE_PK
              from      EDGE_DEV_OWNER.TABLE_
    and     (
              EMPLOYEE.TABLE_FK is not null
    Please suggest how to resolve this.
    Thanks,
    Lony

    HI Ksbabu,
    i am getting this error
    oracle.odi.runtime.agent.invocation.InvocationException: object name already exists: EDGE_DEV_OWNER_RESULTS in statement [create table EDGE_DEV_OWNER_RESULTS(RESULTSPK NUMERIC(10) NOT NULL, SNPSFILENAME VARCHAR(255) NULL, SNPSFILEPATH VARCHAR(255) NULL, SNPSLOADDATE VARCHAR(255) NULL)]
         at oracle.odi.runtime.agent.invocation.RemoteRuntimeAgentInvoker.invoke(RemoteRuntimeAgentInvoker.java:265)
    Thanks,
    Lony
    8886446166

  • 500 - Internal Server Error - Table or View does not Exist

    When trying to use the sample restful service oracle.example.hr I get a 500 - Internal Server Error.
    I have no clue what to do next. I've even tried granting public to the emp table.  Nottin.
    Any insight you could give would be awesome.
    Here is the error:
    Request Path passes syntax validation
    Mapping request to database pool: PoolMap [_failed=false, _lastUpdate=-1, _pattern=null, _poolName=apex, _regex=null, _type=REGEX, _workspaceIdentifier=null, _serviceName=null]
    Applied database connection info
    Attempting to process with PL/SQL Gateway
    Not processed as PL/SQL Gateway request
    Attempting to process as a RESTful Service
    Determining if request can be dispatched as a Tenanted RESTful Service
    Request path has one path segment, continuing processing
    No Tenant Principal established yet, continuing processing
    APEX_LISTENER pool exists, continuing processing
    WebException [statusCode=500]
         at oracle.dbtools.rt.web.WebException.webException(WebException.java:343)
         at oracle.dbtools.rt.web.WebException.internalError(WebException.java:262)
         at oracle.dbtools.rt.web.WebErrorResponse.internalError(WebErrorResponse.java:101)
         at oracle.dbtools.rt.web.WebErrorResponse.error(WebErrorResponse.java:75)
         at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:166)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:184)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3732)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    Caused by: JDBCException [kind=NO_DATA]
         at oracle.dbtools.common.jdbc.JDBCException.wrap(JDBCException.java:88)
         at oracle.dbtools.common.jdbc.JDBCQueryProvider.query(JDBCQueryProvider.java:41)
         at oracle.dbtools.rt.jdbc.entity.JDBCTenantDispatcher.tenant(JDBCTenantDispatcher.java:104)
         at oracle.dbtools.rt.jdbc.entity.TenantDispatcherBase.target(TenantDispatcherBase.java:71)
         at oracle.dbtools.rt.jdbc.entity.TenantDispatcherBase.target(TenantDispatcherBase.java:37)
         at oracle.dbtools.rt.web.ReTargetingDispatcher.canDispatch(ReTargetingDispatcher.java:45)
         at oracle.dbtools.rt.web.RequestDispatchers.choose(RequestDispatchers.java:160)
         at oracle.dbtools.rt.web.RequestDispatchers.dispatch(RequestDispatchers.java:75)
         at oracle.dbtools.rt.web.ETags.checkPrecondition(ETags.java:53)
         at oracle.dbtools.rt.web.HttpEndpointBase.restfulServices(HttpEndpointBase.java:426)
         at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:164)
         ... 14 more
    Caused by: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
         at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879)
         at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:505)
         at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:223)
         at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208)
         at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:886)
         at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1175)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1288)
         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3612)
         at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3656)
         at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1495)
         at sun.reflect.GeneratedMethodAccessor70.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at oracle.ucp.jdbc.proxy.PreparedStatementProxyFactory.invoke(PreparedStatementProxyFactory.java:111)
         at $Proxy104.executeQuery(Unknown Source)
         at oracle.dbtools.common.jdbc.JDBCQueryImpl.resultSet(JDBCQueryImpl.java:93)
         at oracle.dbtools.common.jdbc.JDBCResultRowIterator.<init>(JDBCResultRowIterator.java:28)
         at oracle.dbtools.common.jdbc.JDBCQueryImpl.execute(JDBCQueryImpl.java:53)
         at oracle.dbtools.common.jdbc.JDBCQueryProvider.query(JDBCQueryProvider.java:38)
         ... 23 more

    May be the default parsing schema in your Apex workspace cannot access table EMP. Try and qualify table EMP and grant access from containing schema to Apex parsing schema. Hope being helpful, regards.

  • WF Configuration assistant Error (Table or view does not exist)

    Hi
    I'm trying to configure a fresh owf_mgr schema on my new 11gr2 database using configuration assistant 2.6.4.0.0.
    The assistant connects but is not able to continue. The error is: java.sql.SQLException: ORA-00942: table or view does not exist.
    I don't find anything useful in the log file though.
    I previously did the same thing on a 11gr2 db and it went all nice and good.
    Any ideas what table or view does the wizard mean?
    Thank you in advance.

    Hi
    I'm trying to configure a fresh owf_mgr schema on my new 11gr2 database using configuration assistant 2.6.4.0.0.
    The assistant connects but is not able to continue. The error is: java.sql.SQLException: ORA-00942: table or view does not exist.
    I don't find anything useful in the log file though.
    I previously did the same thing on a 11gr2 db and it went all nice and good.
    Any ideas what table or view does the wizard mean?
    Thank you in advance.

  • Error: table or view does not exist

    Hi,
    I created a procedure where it inserts records from other table (different machine/database). when I execute it, the error was Table or View does not exist+. It seems that it cannot access the table from the other machine/database.
    here is my code..
    insert into <%=odiRef.getSchemaName("*LGL_TGT_DWH_MAIN*", "D")%>.TEMPX_ACCOUNT
         ACCOUNT_NUMBER     ,
         TELEPHONE     ,
         ADDRESS
    select     
    TBL_ACCNT.ACCOUNT_NUMBER ,
    TBL_EMP.TELEPHONE ,
    TBL_EMP.ADDRESS
    from     
    <%=odiRef.getSchemaName("*LGL_TGT_DWH_OTH*", "D")%>.TBL_EMP TBL_EMP ,
    ( select *
    from <%=odiRef.getSchemaName("*LGL_TGT_DWH_MAIN*", "D")%>.TBL_ACCNT
    where PHONE_NUMBER > 0
    ) TBL_ACCNT
    where TBL_ACCNT.PHONE_NUMBER = TBL_EMP.TELEPHONE
    Do I need to create a grant or something to access the table from the other machine?
    Help me please...
    TIA.. :)

    hi,
    the code I posted above was from the procedure I created in Designer. here is the code in the Operator after I run it..
    insert into OBI_DEV.TEMPX_ACCOUNT
    ACCOUNT_NUMBER ,
    TELEPHONE ,
    ADDRESS
    select
    TBL_ACCNT.ACCOUNT_NUMBER ,
    TBL_EMP.TELEPHONE ,
    TBL_EMP.ADDRESS
    from
    DB1_DEV.TBL_EMP TBL_EMP ,
    ( select *
    from OBI_DEV.TBL_ACCNT
    where PHONE_NUMBER > 0
    ) TBL_ACCNT
    where TBL_ACCNT.PHONE_NUMBER = TBL_EMP.TELEPHONE
    here is the error/message in Execution Tab in Operator
    942 : 42000 : java.sql.SQLException: ORA-00942: table or view does not exist
    java.sql.SQLException: ORA-00942: table or view does not exist
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
         at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
         at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:633)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1086)
         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3057)
         at com.sunopsis.sql.SnpsQuery.executeUpdate(SnpsQuery.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.execStdOrders(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTaskTrt(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSqlS.treatTaskTrt(SnpSessTaskSqlS.java)
         at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java)
         at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java)
         at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandSession.treatCommand(DwgCommandSession.java)
         at com.sunopsis.dwg.cmd.DwgCommandBase.execute(DwgCommandBase.java)
         at com.sunopsis.dwg.cmd.e.i(e.java)
         at com.sunopsis.dwg.cmd.h.y(h.java)
         at com.sunopsis.dwg.cmd.e.run(e.java)
         at java.lang.Thread.run(Thread.java:534)
    thanks :)

  • Read_Network resulting Java Error " Table or view does not exists"

    Hello Gurus,
    I tried loading a Oracle Network (Oracle 11g) under the same user where i created the Network Tables. But still i am getting "table or view does not exists" . What could be the issue here ? Please help.
    begin
    SDO_NET_MEM.NETWORK_MANAGER.READ_NETWORK('ROADS_NETWORK', 'TRUE');
    end;
    ERROR at line 1:
    ORA-29532: Java call terminated by uncaught Java exception:
    oracle.spatial.network.NetworkDataException:
    oracle.jdbc.driver.OracleSQLException: ORA-00942: table or view does not exist
    ORA-06512: at "MDSYS.SDO_NETWORK_MANAGER_I", line 284
    ORA-06512: at "MDSYS.SDO_NETWORK_MANAGER_I", line 114
    ORA-06512: at line 2
    Network Metadata is as follows .
    ROADS_NETWORK     161     SPATIAL     LRS_GEOMETRY     ROADWAYS     1     1     ROAD_SEGMENTS     SEGMENT_GEOM     ROADS_NODES     NODE_GEOMETRY     COST               ROADS_LINKS     LINK_GEOMETRY     DIRECTED     COST               ROADS_PATHS     PATH_GEOMETRY     ROADS_PATHS_LINKS

    Jack,
    I apologize for the mix-up. Yes, i realized it was LRS network the first one i ran. And since that didn't work i tried the simpler one.
    But here is what you asked me to run.
    SQL> set line 1000
    SQL> set trimspool on
    SQL>
    SQL> select * from user_sdo_network_metadata where network = 'UNET';
    NETWORK NETWORK_ID NETWORK_CATE GEOMETRY_TYPE NETWORK_TYPE NO_OF_HIERARCHY_LEVELS NO_OF_PARTITIONS LRS_TABLE_NAME LRS_GEOM_COLUMN NODE_TABLE_NAME NODE_GEOM_COLUMN
    NODE_COST_COLUMN
    NODE_PARTITION_COLUMN NODE_DURATION_COLUMN LINK_TABLE_NAME LINK_GEOM_COLUMN LINK_DIRECTI
    LINK_COST_COLUMN
    LINK_PARTITION_COLUMN LINK_DURATION_COLUMN PATH_TABLE_NAME PATH_GEOM_COLUMN PATH_LINK_TABLE_NAME SUBPATH_TABLE_NAME SUBPATH_GEOM_COLUMN PARTITION_TABLE_NAME PARTITION_BLOB_TABLE_NAME COMPONENT_TABLE_NAME NODE_LEVEL_TABLE_NAME TOPOLOGY U E
    UNET 221 SPATIAL SDO_GEOMETRY 1 0 UNET_NODES GEOM
    UNET_LINKS GEOM UNDIRECTED
    NETWORK NETWORK_ID NETWORK_CATE GEOMETRY_TYPE NETWORK_TYPE NO_OF_HIERARCHY_LEVELS NO_OF_PARTITIONS LRS_TABLE_NAME LRS_GEOM_COLUMN NODE_TABLE_NAME NODE_GEOM_COLUMN
    NODE_COST_COLUMN
    NODE_PARTITION_COLUMN NODE_DURATION_COLUMN LINK_TABLE_NAME LINK_GEOM_COLUMN LINK_DIRECTI
    LINK_COST_COLUMN
    LINK_PARTITION_COLUMN LINK_DURATION_COLUMN PATH_TABLE_NAME PATH_GEOM_COLUMN PATH_LINK_TABLE_NAME SUBPATH_TABLE_NAME SUBPATH_GEOM_COLUMN PARTITION_TABLE_NAME PARTITION_BLOB_TABLE_NAME COMPONENT_TABLE_NAME NODE_LEVEL_TABLE_NAME TOPOLOGY U E
    COST
    UNET_PATHS GEOM UNET_PLINKS
    SQL>
    SQL> select * from user_sdo_geom_metadata where table_name like 'UNET_%';
    TABLE_NAME
    COLUMN_NAME
    DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)
    SRID
    UNET_LINKS
    GEOM
    SDO_DIM_ARRAY(SDO_DIM_ELEMENT('Long', -180, 180, 1), SDO_DIM_ELEMENT('Lat', -90, 90, 1))
    8307
    TABLE_NAME
    COLUMN_NAME
    DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)
    SRID
    UNET_NODES
    GEOM
    SDO_DIM_ARRAY(SDO_DIM_ELEMENT('Long', -180, 180, 1), SDO_DIM_ELEMENT('Lat', -90, 90, 1))
    8307
    TABLE_NAME
    COLUMN_NAME
    DIMINFO(SDO_DIMNAME, SDO_LB, SDO_UB, SDO_TOLERANCE)
    SRID
    UNET_PATHS
    GEOM
    SDO_DIM_ARRAY(SDO_DIM_ELEMENT('Long', -180, 180, 1), SDO_DIM_ELEMENT('Lat', -90, 90, 1))
    8307
    SQL> desc unet_nodes;
    Name Null? Type
    NODE_ID NOT NULL NUMBER
    NODE_NAME VARCHAR2(200)
    NODE_TYPE VARCHAR2(200)
    ACTIVE VARCHAR2(1)
    PARTITION_ID NUMBER
    GEOM MDSYS.SDO_GEOMETRY
    SQL>
    SQL> desc unet_links;
    Name Null? Type
    LINK_ID NOT NULL NUMBER
    LINK_NAME VARCHAR2(200)
    START_NODE_ID NOT NULL NUMBER
    END_NODE_ID NOT NULL NUMBER
    LINK_TYPE VARCHAR2(200)
    ACTIVE VARCHAR2(1)
    LINK_LEVEL NUMBER
    GEOM MDSYS.SDO_GEOMETRY
    COST NUMBER

  • Error with Sun App. Server 9...table or view does not exist..

    I am not sure where to post this but here it is:
    I am using Sun App. Server 9 along with a XE database...I use two schemas in my web app but on the first I get ORA error -table or view does not exist from SAS ,although it exists..the second works fine...
    Q: I cannot use 2 simultaneous connection with XE? or what seams to be the problem...
    PS: I also experimented randomly a oracle.toplink error that my Persistance Unit was unable to connect

    two PU's
    two Database Connections (in fact jsf pages ware generate based on entity classes-witch ware made using the connection)
    two schemas: HR and CONTA
    On a second thought I think somehow you're right ...it must be some connection error regarding the schema used...
    I'll look into it...but later...
    Florin POP

  • Error when adding forigen key (table or view does not exist)

    Hi
    i write the foreign key name and select the the table from the combo and also the field and click apply it gives me error message says :-
    error table or view does not exist vendor code 942
    any help?
    thanks in advance.
    .

    There is only an issue with this if your table has to be enclosed in double quotes. i.e. If you have mixed case table names. In that case, instead of using the context menu (right click on Table) Constraint -> Add Foreign Key, you should use the Edit... table dialog.
    We did have a bug logged for this, but the instance for using the Create foreign key dialog has not been fixed. I have reopened the bug.
    Sue

  • Table or view does not exist when using in PL/SQL block

    I hav something strange...
    When i execute a query it works just fine... When i use the exact same query in a function i want to create, i get the error 'table or view does not exist'
    I create the function with the same user then when i'm executing the query.
    For example:
    select name,userid from portal.WWLOG_ACTIVITY_LOGS
    if i execute this... it works fine. I get my results.
    However when i create a function:
    CREATE OR REPLACE FUNCTION EBUSINESS.GET_USER_CREATOR (p_userid IN Varchar2) return VARCHAR2
    as
    /*CURSOR c_user_creator IS
    select distinct name,userid from portal.WWLOG_ACTIVITY_LOGS
    where sub_domain = 'user' and action = 'create'
    and name = p_userid;*/
    v_creator varchar2(500);
    v_ret_val VARCHAR2(500) := 'NOT_FOUND';
    BEGIN
    select userid into v_ret_val from portal.WWLOG_ACTIVITY_LOGS
    where sub_domain = 'user' and action = 'create'
    and name = p_userid;
    --v_ret_val := x.userid;
    --end loop;
    -- Is the user in the group or not?
    /*OPEN c_user_creator;
    FETCH c_user_creator INTO v_creator;
    IF c_user_creator%FOUND THEN
    v_ret_val := v_creator;
    ELSE
    v_ret_val := 'NOT FOUND';
    END IF;
    CLOSE c_user_creator;*/
    Return v_ret_val;
    END;
    The table or view does not exist...
    I tryed with cursor, select into, for x in (select....)
    Nothing works.
    A select grant is a select grant right? Are there different grant you should use so you can select it into a function or just do a normal select?
    I also tryed to create a view that just sais select * from WWLOG_ACTIVITY_LOGS but that doesn't work...

    Are there different grant you should use so you can
    select it into a function or just do a normal select? Yes. Grants on objects used in functions/procedures must be given directly to the user, and not through a role.

  • Create materialized View fails with "table or view does not exist"

    DB: 10.2.0.4
    OS: Win 2003
    Hi,
    Here in my tests, i have 2 databases (A(source) and B(backup)), and i am trying to create an mview in database B to replicate data from one test table from database A, only for test purpose. I'm getting the error "table or view does not exist" when i try to create a mview with REFRESH FAST. Here is my code:
    CREATE MATERIALIZED VIEW TESTES.TAB_TESTES_REPLIC_MVIEW_02
    REFRESH FAST
    START WITH TO_DATE('21/02/2012 18:50:00', 'DD/MM/YYYY HH24:MI:SS')
    NEXT SYSDATE + 1/24/60
    WITH PRIMARY KEY
    AS SELECT REGISTRO1,
    REGISTRO2
    FROM TESTES.TAB_TESTES_REPLIC_MVIEW_02@DB_LINK_ORA10;
    The dblink is workig fine(dblink user has select privilege on TESTES.TAB_TESTES_REPLIC_MVIEW_02), and i have created the mview log on database A.
    Where is my mistake.
    Thanks a lot.
    Edited by: Fabricio_Jorge on 21/02/2012 19:06

    I found the solution.
    I had to grant SELECT on the mview log. The name is avaiable in DBA_MVIEW_LOGS

  • Table or view does not exist with new user

    I am having trouble getting a new user to be able to access the tables in the database. I have created a user just like normal and given it all the privileges i would normally give it. It is the only user other than the original that created all the tables. Every time i go to select from a table i get the error table or view does not exist.
    Am i missing something? It is Oracle 10.1.0.2 and i have never had this problem with earlier versions.

    You will always need to qualify the table name with schema name if you are accessing a table of some other schema except in a case that you have created a public synonym (with the same name as table). Suppose there is table table1 in schema schema1 and you are accessing it from schema2.
    You will need to write schema1.table1 but if you create a public synonym
    create public synonym table1 for schema1.table1;then you can directly write
    select * from table1;Sidhu
    http://amardeepsidhu.blogspot.com

  • Error in pakcage table or view does not exist but on sql prompt query works

    Hi
    Can any one help me to understand the error of ORA-00942: table or view does not exist while compiling the package on Oracle 9.2.0.4.0
    The below package compiled in system user and trying to query on view v$session_wait however getting below error.
    PACKAGE BODY SYSTEM.PK_DB_ALERT
    On line: 212
    PL/SQL: ORA-00942: table or view does not exist
    I can execute same query mentioned below from sql prompt from system user and it works fine however it doesn't like from package, Please advice, thank you in advance.
    SELECT SID, seq#, event, wait_time
    FROM v$session_wait
    WHERE event NOT LIKE 'SQL*Net%' AND wait_time <> 0
    ORDER BY 2

    SDD wrote:
    Hi
    Can any one help me to understand the error of ORA-00942: table or view does not exist while compiling the package on Oracle 9.2.0.4.0Which means package owner is granted select on view not directly but via roles. However, roles are ignored by definer rights packages/stored procedures/stored functions/triggers... You need to grant package owner select on view directly.
    SY.
    Edited by: Solomon Yakobson on Jan 21, 2010 4:06 AM

  • Error in Upload file-table or view does not exist-wwv_flow_file_objects$

    Hi,
    i am trying to upload a file and then store the contents of the file into one of my tables in the schema.I wrote one package for uploading the file and then a process to insert each record in the uploaded file to the table in my schema.When i try compiling the package it gives an error.
    PL/SQL: ORA-00942: table or view does not exist
    The name of the table is wwv_flow_file_objects$
    The package is as follows-
    CREATE OR REPLACE PACKAGE BODY Text_File_Pkg AS
    FUNCTION get_file_lines (
    p_file_name IN VARCHAR2,
    p_lines IN OUT line_tab_type,
    p_rec_sep IN VARCHAR2 DEFAULT dos_new_line
    ) RETURN INTEGER
    IS
    v_binary_file BLOB;
    v_text_file CLOB;
    v_dest_offset INTEGER := 1;
    v_src_offset INTEGER := 1;
    v_lang_context INTEGER := DBMS_LOB.default_lang_ctx;
    v_warning INTEGER;
    v_rec_sep_len CONSTANT INTEGER := LENGTH(p_rec_sep);
    v_start_pos INTEGER := 1;
    v_end_pos INTEGER := 1;
    v_line_num INTEGER := 1;
    v_file_length INTEGER;
    BEGIN
    IF p_file_name IS NULL
    THEN
    RETURN 1;
    END IF;
    IF p_rec_sep IS NULL
    THEN
    RETURN 2;
    END IF;
    SELECT blob_content
    INTO v_binary_file
    FROM wwv_flow_file_objects$
    WHERE NAME = p_file_name
    AND (mime_type = 'text/plain' OR mime_type = 'application/octet-stream')
    AND doc_size &gt; 0;
    DBMS_LOB.createtemporary(v_text_file, TRUE);
    DBMS_LOB.converttoclob(v_text_file, v_binary_file,
    DBMS_LOB.lobmaxsize, v_dest_offset,
    v_src_offset, DBMS_LOB.default_csid,
    v_lang_context, v_warning);
    IF v_warning = DBMS_LOB.warn_inconvertible_char
    THEN
    -- Unable to convert file.
    RETURN 3;
    END IF;
    v_file_length := DBMS_LOB.getlength(v_text_file);
    LOOP
    EXIT WHEN v_start_pos &gt; v_file_length;
    v_end_pos := DBMS_LOB.INSTR(v_text_file, p_rec_sep, v_start_pos);
    IF v_end_pos = 0
    THEN
    v_end_pos := v_file_length + 1;
    END IF;
    IF (v_end_pos - v_start_pos) &gt; 4000
    THEN
    -- Line exceeds 4000 characters.
    RETURN 4;
    END IF;
    p_lines(v_line_num) := DBMS_LOB.SUBSTR(v_text_file, v_end_pos - v_start_pos, v_start_pos);
    v_line_num := v_line_num + 1;
    v_start_pos := v_end_pos + v_rec_sep_len;
    END LOOP;
    RETURN 0;
    EXCEPTION
    WHEN NO_DATA_FOUND
    THEN
    RETURN 5;
    END get_file_lines;
    END Text_File_Pkg;
    Any suggestions.
    Many Thanks,
    Sanjai

    Hi,
    i am trying to upload a file and then store the contents of the file into one of my tables in the schema.I wrote one package for uploading the file and then a process to insert each record in the uploaded file to the table in my schema.When i try compiling the package it gives an error.
    PL/SQL: ORA-00942: table or view does not exist
    The name of the table is wwv_flow_file_objects$
    The package is as follows-
    CREATE OR REPLACE PACKAGE BODY Text_File_Pkg AS
    FUNCTION get_file_lines (
    p_file_name IN VARCHAR2,
    p_lines IN OUT line_tab_type,
    p_rec_sep IN VARCHAR2 DEFAULT dos_new_line
    ) RETURN INTEGER
    IS
    v_binary_file BLOB;
    v_text_file CLOB;
    v_dest_offset INTEGER := 1;
    v_src_offset INTEGER := 1;
    v_lang_context INTEGER := DBMS_LOB.default_lang_ctx;
    v_warning INTEGER;
    v_rec_sep_len CONSTANT INTEGER := LENGTH(p_rec_sep);
    v_start_pos INTEGER := 1;
    v_end_pos INTEGER := 1;
    v_line_num INTEGER := 1;
    v_file_length INTEGER;
    BEGIN
    IF p_file_name IS NULL
    THEN
    RETURN 1;
    END IF;
    IF p_rec_sep IS NULL
    THEN
    RETURN 2;
    END IF;
    SELECT blob_content
    INTO v_binary_file
    FROM wwv_flow_file_objects$
    WHERE NAME = p_file_name
    AND (mime_type = 'text/plain' OR mime_type = 'application/octet-stream')
    AND doc_size &gt; 0;
    DBMS_LOB.createtemporary(v_text_file, TRUE);
    DBMS_LOB.converttoclob(v_text_file, v_binary_file,
    DBMS_LOB.lobmaxsize, v_dest_offset,
    v_src_offset, DBMS_LOB.default_csid,
    v_lang_context, v_warning);
    IF v_warning = DBMS_LOB.warn_inconvertible_char
    THEN
    -- Unable to convert file.
    RETURN 3;
    END IF;
    v_file_length := DBMS_LOB.getlength(v_text_file);
    LOOP
    EXIT WHEN v_start_pos &gt; v_file_length;
    v_end_pos := DBMS_LOB.INSTR(v_text_file, p_rec_sep, v_start_pos);
    IF v_end_pos = 0
    THEN
    v_end_pos := v_file_length + 1;
    END IF;
    IF (v_end_pos - v_start_pos) &gt; 4000
    THEN
    -- Line exceeds 4000 characters.
    RETURN 4;
    END IF;
    p_lines(v_line_num) := DBMS_LOB.SUBSTR(v_text_file, v_end_pos - v_start_pos, v_start_pos);
    v_line_num := v_line_num + 1;
    v_start_pos := v_end_pos + v_rec_sep_len;
    END LOOP;
    RETURN 0;
    EXCEPTION
    WHEN NO_DATA_FOUND
    THEN
    RETURN 5;
    END get_file_lines;
    END Text_File_Pkg;
    Any suggestions.
    Many Thanks,
    Sanjai

  • Error(20,22): PL/SQL: ORA-00942: table or view does not exist

    I am getting currently getting an error when I try and insert into a table from a different schema from my Stored Procedure:
    Error(20,22): PL/SQL: ORA-00942: table or view does not exist
    I am explicitly calling the table with the schema name infront i.e.
    INSERT INTO SAPSR3.ZTREC_NAME_TYPE
    MASTER_ID,
    NAME_TYPE,
    FAMILY_NAME,
    FIRST_NAME,
    MIDDLE_NAME,
    TITLE
    VALUES
    In_MasterID,
    In_NameType,
    In_FamilyName,
    In_FirstName,
    In_MiddleName,
    In_Title
    I only get this error when I try and compile my stored procedure. If I try this insert not within a stored procedure (i.e. a blank script) it works perfectly.
    Can anyone tell me what Im doing wrong?
    Thanks.

    Hi,
    It sounds like you (the procedure owner) have privileges on that table only through a role.
    Roles don't count in stored procedures created with AUTHID OWNER (which is the default).
    Either
    (1) Have user SAPSR3 grant the necessary privileges directly to you (or to PUBLIC), or
    (2) change the procedure so that it runs with the caller's privileges, by adding AUTHID CURRENT_USER after the argument list but before the keyword IS (os AS) like this:
    CREATE OR REPLACE PROCEDURE     foo
    (     x     IN     NUMBER
    AUTHID CURRENT_USER
    IS ...

  • Error while deploy mapping ora-06550 table or view does not exist

    Hi everyone,
    i have a target source 'U_BCK' that cointains some Oracle table.
    I have also created a target schema 'BCK_OWNER' where i create some dimensions and cubes with mappings.
    My mappings connect some table from U_BCK with dimension or cube from BCK_OWNER.
    My repository owner is called 'rep_owner' and i used this user to create every metadata.
    Now i'm trying to deploy, and i don't have any problem until deploying mappings. When i try to deploy mappings i get some errors like ora-06550,ora-00942 table or view does not exist and statement ignored.
    Please help me and sorry for my english...
    Thanks,
    Alex.

    The mapping, that drives the data from one table to another is deployed to the database as a PL/SQL package. When deploying your mapping fails, it most often means that the resulting PL/SQL package doesn't compile in the database.
    Using Oracle SQL Developer (or Toad, SQL Navigator or any other tool) connect to the schema on the database where you have deployed the mapping. Open the pl/sql package and compile it. That should show you the place where the compilation fails, and give you an idea as to what table it can not find. Otherwise, in SQLPLUS, you can simply give the following command:
    ALTER PACKAGE THE_PACKAGE_NAME_GOES_HERE compile body;
    show errors;
    As the database user who owns the source tables, make sure to issue a GRANT command for each of the source tables, granting SELECT access to the database user who owns the mapping:
    grant select on TABLENAME to TARGETSCHEMA.
    hope this helps
    Borkur

Maybe you are looking for