2017-07-14 61 views
0

我正在嘗試創建一個Oracle文本索引,以便在數據庫的西班牙語文本列上進行FTS查詢。 據甲骨文的文檔我需要創建一個詞法分析器和一個詞表,以使閥杆和模糊查詢:西班牙語在Oracle文本中產生

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'); 

當我使用運行查詢幹符($),我收到以下錯誤:

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文檔主幹部件應爲西班牙語工作:http://docs.oracle.com/cd/B28359_01/text.111/b28304/amultlng.htm#CCREF2294

而且,這似乎並沒有在甲骨文XE缺少功能:http://docs.oracle.com/cd/E17781_01/doc.112/e21743/toc.htm#XERDM105

如果我改變「西班牙語」的「英語」它的工作原理確定。有沒有人設法在Oracle Text中設置西班牙語詞幹?

回答

0

經過一番研究,我發現西班牙語詞幹在完整的Oracle安裝中可以正常工作。 對於詞幹分析,Oracle需要一個在Oracle XE安裝中不可用的詞典。 Oracle XE僅安裝英文和日文字典。