Что вы называете «база данных»? Я спрашиваю, потому что люди - чей фон не является Oracle - имеют тенденцию смешивать oracle "пользователи" (схемы) с "базами данных".
Если таблицы, участвующие в запросе, принадлежат пользователям, которые находиться в одной базе данных, достаточно предоставить (select
) привилегию от одного пользователя другому.
connect scott/tiger
grant select on emp to mike;
connect mike/lion
select d.dname, e.ename
from dept d join scott.emp e on e.deptno = d.deptno
^^^^^^^^^
this is a table that belongs to SCOTT who granted you SELECT privilege
Если они принадлежат пользователям, которые находятся в разных базах данных, то вам нужно ссылка на базу данных.
connect mike/lion
create database link dbl_scott
connect to scott
identified by tiger
using 'orcl';
select d.dname, e.ename
from dept d join emp@dbl_scott e on e.deptno = d.deptno;
^^^^^^^^^^^^^
this is a table you're accessing over the database link