Java Mailing List Archive

http://www.dba.5341.com/

Home » Home (12/2007) » oracle l »

Re: Refresh materialized view by other user then owner

Stefan Knecht

2006-04-30

Replies:


From what I can see from your posting:


    begin
        DBMS_MVIEW.REFRESH('sys.My_View','c');
    end;

You're creating the materialized view in schema SYSTEM, but try to refresh an mview in schema SYS - that cannot work.

The error message you're getting doesn't seem to be accurate, though, you should be getting ora-23401 if that is the cause - I only tested on 10gr2, so 9i might react differently but I cannot test this right now.

system@CENTRAL> grant create session, alter any materialized view to user1 identified by user1;

Grant succeeded.

system@CENTRAL> create table t1 (x int primary key);

Table created.

system@CENTRAL> create materialized view v1 as select * from t1
  2  ;

Materialized view created.

system@CENTRAL> @conn user1/user1
Connected.
user1@CENTRAL> exec dbms_mview.refresh('SYSTEM.V1 ');

PL/SQL procedure successfully completed.

user1@CENTRAL>


Either way, you really shouldn't be using SYS or SYSTEM for userdata.

Stefan


©2008 dba.5341.com - Jax Systems, LLC, U.S.A.