我在阿拉伯语网站的索引 URL 中使用 Oracle 文本,我注意到在索引站点时它不会忽略标点符号,因为不支持阿拉伯语并且没有同义词库。当我搜索一个没有标点符号的句子时,分数很低,当我用标点符号搜索时返回不好的结果,有时它会返回这个错误:
ORA-20000:Oracle 文本错误
DRG-50962:转换输入字符串中不允许使用查询运算符
我知道这个错误是什么意思,一些句子包含 Oracle Text 运算符,我如何在搜索中忽略它们(按原样发送句子),或者要删除的运算符列表是什么。注意:我正在使用查询重写和转义序列
(select /*+ FIRST_ROWS(1)*/ id,score(1) as sc1, isn ,sentence_length,URL from plag_web_temp_docsentences
where contains(URL,'<query>
<textquery>' || OriginalSentence ||'
<progression>
<seq><rewrite>transform((TOKENS, "{", "}", "{ }"))</rewrite></seq>
</progression>
</textquery>
<score datatype="INTEGER" algorithm="COUNT"/>
</query>',1)>0