view1 可能使用 join 关联,rownum 不支持

解决方案 »

  1.   

    view1 == select * from view2@db_link只要 查询 select * from view1 where ..... 都不行
      

  2.   

    泥用的是9I吧?这是9I的一个BUG,需要打补丁来解决。
      

  3.   

    SQL> connect reportuser/reportuser
    Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0 
    Connected as reportuserSQL> create table cc (id varchar2(10));Table createdSQL> insert into cc values('1');1 row insertedSQL> create view cc_v as select * from cc;View createdSQL> connect test/test
    Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0 
    Connected as testSQL> create database link test_link CONNECT TO reportuser IDENTIFIED BY reportuser using 'beckham';Database link created方法一:SQL> select * from cc_v@test_link where rownum<=1;ID
    ----------
    1方法二:SQL> create view cc_v as select * from cc@test_link;View createdSQL> select * from cc_v where rownum<=1;ID
    ----------
    1两种方法都没有错
      

  4.   

    俺也遇到相似问题,找不到答案!真需打补丁吗?!
        从远程数据库取数据插入到本地临时表,在sqlplusw中单独insert tmp_t select * from remote_t@dblink没有问题,但写入过程后就报ora-02063(写过程为了加循环)!
        请兄弟们指点![email protected]