Oracle上下文索引:不适用于dblink

时间:2017-07-27 04:22:31

标签: oracle oracle-text

db1上有两个db,table test_table,字段a有上下文索引。查询:

select *
  from test_table t
 where contains(t.a, 'str') > 0 

它在db1上运行正常。但是,当我尝试从其他数据库的dblink执行相同的查询时:

select *
  from test_table@db1 t
 where contains(t.a, 'str') > 0  

我收到此错误:

ora-20000:Oracle文本错误:  DRG-10599:列未编入索引

1 个答案:

答案 0 :(得分:0)

您必须添加dblink才能运行。 https://docs.oracle.com/cd/E11882_01/text.112/e24436/csql.htm#CCREF0104

  

CONTAINS运算符还支持数据库链接。你可以识别一个   远程表或物化视图通过将@dblink附加到末尾   其名称。 dblink必须是数据库的完整或部分名称   链接到包含远程表或物化视图的数据库。   (不支持查询远程视图。)

select *
  from test_table@db1 t
 where contains(t.a, 'str')@db1 > 0.