
1、数据库A,有用户 X 和用户 Y(DBA权限)
2、数据库B,有用户 Z
3、在数据库A上,用户X创建了一个DB_LINK链接到了数据库B(通过用户Z)
测试后,用户X可以正常查询用户Z上的表
create database link conn_b_z
connect to z identified by password
using ‘tnsname_b’;
4、使用用户Y(拥有DBA权限)登录数据库A,执行如下语句:
语句1:
create or replace view x.v_t1
as
select tt1.object_id
from t1@conn_b_z tt1;
执行成功:
语句2:
create or replace view x.v_t2
as
select tt1.object_id
from t1@conn_b_z tt1
left join t2@conn_b_z tt2
on tt1.object_id=tt2.object_id;
执行成功:
语句3:
create or replace view x.v_t3
as
select tt1.object_id
from t1@conn_b_z tt1
left join t2@conn_b_z tt2
on tt1.object_id=tt2.object_id
left join t3@conn_b_z tt3
on tt1.object_id=tt3.object_id;
执行失败:提示:ora-02019
5、使用用户X登录数据库A,执行以上语句,均执行成功。
6、当将 db_link 创建为 public db_link时,
用户X 和 用户Y 执行以上语句均成功。
疑问:
请问一下,为什么在创建有2个left join 及以上的语句视图时,会报 ora-02019 错误????
有什么文档可以参考吗?
谢谢!