我试着在postgresql数据库中添加俄文字典进行全文搜索。我下载了dict文件,将它们转换成UTF-8并尝试创建新的dict

$ iconv -f koi8-r -t utf-8 < ru_RU.aff > /opt/local/share/postgresql93/tsearch_data/russian.affix
$ iconv -f koi8-r -t utf-8 < ru_RU.dic > /opt/local/share/postgresql93/tsearch_data/russian.dict


CREATE TEXT SEARCH DICTIONARY russian_ispell (
   TEMPLATE = ispell,
   DictFile = russian,
   AffFile = russian,
   StopWords = russian
);

但有个错误:
ERROR:  invalid byte sequence for encoding "UTF8": 0xd1
CONTEXT:  line 341 of configuration file "/opt/local/share/postgresql93/tsearch_data/russian.affix": "SFX Y   хаться шутся        хаться"

然后尝试用其他俄语口述,但同样的错误发生了。我如何处理这个错误?谢谢。

最佳答案

您可以尝试执行以下命令:

    export LC_ALL=C

我想你有现场问题。此命令应在执行创建字典命令的同一命令行会话中执行。

关于postgresql - PostgreSQL俄语dict gor全文搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28979911/

10-11 11:36