Oracle文本中的西班牙语词干提取
我正在尝试创建一个Oracle文本索引,以便对数据库中的一些西班牙语文本列进行FTS查询。 根据Oracle文档,我需要创建一个LEXER和一个WORDLIST来启用stem和fuzzy查询:Oracle文本中的西班牙语词干提取,oracle,oracle-text,stem,Oracle,Oracle Text,Stem,我正在尝试创建一个Oracle文本索引,以便对数据库中的一些西班牙语文本列进行FTS查询。 根据Oracle文档,我需要创建一个LEXER和一个WORDLIST来启用stem和fuzzy查询: exec ctxsys.ctx_ddl.create_preference ('cust_lexer','BASIC_LEXER'); exec ctxsys.ctx_ddl.set_attribute ('cust_lexer','base_letter','YES'); exec ctxsys.ctx
exec ctxsys.ctx_ddl.create_preference ('cust_lexer','BASIC_LEXER');
exec ctxsys.ctx_ddl.set_attribute ('cust_lexer','base_letter','YES');
exec ctxsys.ctx_ddl.set_attribute ('cust_lexer','index_stems','SPANISH');
exec ctxsys.ctx_ddl.create_preference('cust_wordlist','BASIC_WORDLIST');
exec ctxsys.ctx_ddl.set_attribute('cust_wordlist','stemmer','AUTO');
exec ctxsys.ctx_ddl.set_attribute('cust_wordlist','fuzzy_match','AUTO');
然后使用这些首选项创建索引:
CREATE INDEX NOMBREACCION_CTX ON ACCION(NOMBRE_ACCION) INDEXTYPE IS CTXSYS.CONTEXT parameters ('LEXER cust_lexer WORDLIST cust_wordlist');
使用stem运算符($)运行查询时,出现以下错误:
ORA-20000: Oracle Text error:
DRG-00100: internal error, arguments : [50935],[drpn.c],[1113],[],[]
DRG-00100: internal error, arguments : [50935],[drpnw.c],[651],[],[]
DRG-00100: internal error, arguments : [51002],[drwa.c],[597],[],[]
DRG-00100: internal error, arguments : [51029],[drwas.c],[498],[ACCION],[]
DRG-51023: stemmer file cannot be opened
20000. 00000 - "%s"
*Cause: The stored procedure 'raise_application_error'
was called which causes this error to be generated.
*Action: Correct the problem as described in the error message or contact
the application administrator or DBA for more information.
根据Oracle文档,stem功能应适用于西班牙语:
此外,这似乎不是Oracle XE中缺少的功能:
如果我把西班牙语改成英语,效果还可以。有人在Oracle文本中设置过西班牙语词干吗?经过一些研究,我发现西班牙语词干在完整的Oracle安装中可以正常工作。 对于词干分析,Oracle需要Oracle XE安装中没有的字典。Oracle XE仅安装英语和日语词典