Oracle 11g创建远程物化视图时提示“ORA-01788: 此查询块中要求 CONNECT BY 子句”的解决方案


----建立测试环境DBLINK:
create database link lnk
  connect to user1
  identified by pwd1
  using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 172.17.211.114)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SID= REMOTEDB)))';
 
--创建物化视图,每隔两天自动同步更新一次;
  CREATE MATERIALIZED VIEW DEPARTMENT  
     REFRESH FORCE                 
     START WITH SYSDATE                   
     NEXT  SYSDATE + 2                  
     WITH PRIMARY KEY       
  AS SELECT * FROM user1.DEPARTMENT@lnk WHERE 1=1;     

将远程服务器的一个表映射为本地的一个物化视图,使用下列语句:


结果提示:"ORA-01788: 此查询块中要求 CONNECT BY 子句"。

google无法访问,百度搜索太扯蛋,用必应,总算得到线索,解决方案:

在本地库中执行如下语句:

ALTER SYSTEM SET "_ALLOW_LEVEL_WITHOUT_CONNECT_BY"=TRUE SCOPE=BOTH 

你可能感兴趣的:(Oracle)