oracle无法跨用户表创建视图

表现:

    能访问其他用户的表,但不能创建视图

    CREATE OR REPLACE VIEW uuuu
    AS
    select t1.a,
       t1.b,
       t1.c,
       t6.a,
       t4.a,
       t2.a,
       t2.a,
       t3.a,
       t3.b,
       t5.a,
       t6.b
    from u.a   t1,
       u.b t2,
       u.c  t3,
       u.d t4,
       u.e t5,
       u.f  t6
    where t1.a= t2.a     and
       t1.a= t3.a(+) and
       t1.a = t4.a    and
       t1.a = t5.a    and
       t1.a= t6.a   and
       t5.d like '%D';

 

ORA-01031: 权限不足

 

select t1.a,
       t1.b,
       t1.c,
       t6.a,
       t4.a,
       t2.a,
       t2.a,
       t3.a,
       t3.b,
       t5.a,
       t6.b
    from u.a   t1,
       u.b t2,
       u.c  t3,
       u.d t4,
       u.e t5,
       u.f  t6
    where t1.a= t2.a     and
       t1.a= t3.a(+) and
       t1.a = t4.a    and
       t1.a = t5.a    and
       t1.a= t6.a   and
       t5.d like '%D'

能正常执行

 

解决:

    grant all on u.a to u1;

    grant all on u.b to u1;

    grant all on u.c to u1;

    grant all on u.d to u1;

    grant all on u.e to u1;

    grant all on u.f  to u1;

你可能感兴趣的:(ORACLE)