本人为用户A的一个表table1的一个字段建立了一个全文索引,然后以用户A的身份连接数据库,使用此全文索引进行表查询正常。之后我建立了一个以用户A的身份连接数据库的databaselink,然后以用户B的身份登陆数据库,在这种情况下,想通过之前建立的databaselink来查询用户A的表table1,而且在查询时想利用table1的全文索引,但是一旦执行使用全文索引的SQL查询语句,oracle就报出"ora-03113:通信通道的文件文件结束"的错误,无法进行查询,请问有谁遇到过这种情况?能否帮在下解决?万分感激。
附例句:
在用户A登陆的情况下执行以下语句正常,其中table1的field1字段建立了全文索引:
select * from table1 where contains(field1,'ABC')>0在用户B登陆的情况下想通过databaselink执行以下语句时就报错了:
select  * from table1@A where contains(addr,'ABC')>0
A为已建立的以用户A身份连接数据库的databaselink,进行一般的SQL查询工作正常。

解决方案 »

  1.   

    select  * from A.table1 where contains(addr,'ABC')>0;
    这样不行吗
      

  2.   

    回yuyu1980:
    如果用户A与用户B在同一个数据库实例上当然可以这样,但是如果用户A与B在不同的两个数据库实例上该怎样处理呢?
      

  3.   

    "hjason (水鱼)"你好!DBLINK是不能传送LOB数据的,你可以通过SELECT查询它,但不能作为条件(WHERE),ORACLE已经将它确定为一个BUG,在10G中是不能实现的.Thanks
    Hima