PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

So erstellen Sie das Thesaurus-Wörterbuch für meine benutzerdefinierte Textsuchkonfiguration richtig

Sie haben bis auf wenige Ausnahmen alles richtig gemacht:

  • thesaurus_my_swedish.ths sollte nicht leer sein, sondern Regeln wie diese enthalten (entnommen aus Ihrem Beispiel):

    hello world : hw
    
  • Sie sollten das neue Wörterbuch für alle Token-Typen verwenden, die jetzt swedish_stem verwenden , das ist

    ALTER TEXT SEARCH CONFIGURATION my_swedish
       ALTER MAPPING FOR asciihword, asciiword, hword, word
       WITH thesaurus_my_swedish, swedish_stem;
    

Dieser Fehler ist mysteriös und hätte nicht passieren dürfen:

ERROR:  text search configuration "my_swedish" does not exist

Vielleicht haben Sie sich mit der falschen Datenbank verbunden, oder Sie haben die Konfiguration wieder gelöscht, oder sie befindet sich nicht im search_path und Sie müssen es mit seinem Schema qualifizieren. Verwenden Sie \dF *.* in psql um alle vorhandenen Konfigurationen aufzulisten.

Natürlich müssen Sie das Wörterbuch erstellen, bevor Sie es in einer Textsuchkonfiguration verwenden können.

Ändern Sie nicht die Konfigurationen in pg_catalog , würden solche Modifikationen nach einem Upgrade verloren gehen.