Как мне выполнить полнотекстовый поиск в Sql Server 2008, где данные содержат несколько языков? - PullRequest
3 голосов
/ 16 августа 2010

У меня есть таблица базы данных в Sql Server 2008 R2, которая содержит данные, хранящиеся на нескольких языках, включая английский, шведский, венгерский и немецкий.

В таблице используется сопоставление Latin1_General_CI_AS.Полнотекстовый каталог имеет присвоенную ему таблицу с индексом в многоязычном столбце.

У меня две проблемы:

  • В свойствах каталога язык должен бытьуказано для переноса слов.Это в настоящее время установлено на английском языке.Как заставить его использовать несколько языков для разрывов слов?
  • Венгерский язык даже не доступен в списке языков, которые можно выбрать для разрывов слов.Как настроить полнотекстовый поиск для поиска венгерского текста?

Каждая строка в таблице содержит только один язык.

1 Ответ

1 голос
/ 16 августа 2010

Согласно Microsoft, sys.fulltext_languages, венгерский язык не поддерживается для полнотекстового поиска.

Полный список поддерживаемых языков: http://msdn.microsoft.com/en-us/library/ms176076.aspx

Также кажется, что вынам придется выбрать один или другой язык:

http://blogs.msdn.com/b/sqlcat/archive/2008/11/06/best-practices-for-integrated-full-text-search-ifts-in-sql-2008.aspx

Работа с несколькими языками в одном документе - сложная проблема.Какой инструмент разбиения по словам вы используете для измельчения исходного документа, и какой язык вы собираетесь указать для запроса?Например, если у вас есть документ с корейским и английским языками и вы используете средство обработки корейских слов для обработки документа, то при поиске в документе английских слов он найдет только точные слова, а не любые другие формы слов (например,и))

...