Я пытаюсь проверить полнотекстовый поиск в Microsoft SQL Server 2017 Standard Edition.Я сохранил необходимые файлы в
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn
и
C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\FTData
FYI, файлы данных хранятся где-то еще на другом диске.
относительно лексикона /Тезаурус
В tsenu.xml я пробовал как с комментарием, так и с удалением комментария. Файлы закодированы в UCS2 LE BOM (это была кодировка исходного файла. Что касается файла тезауруса, который я начал, написав вБлокнот, сохранение в Юникоде. Это не работает, и поэтому я перешел к вышеупомянутой кодировке).
Но после выполнения:
EXEC sp_fulltext_service 'restart_all_fdhosts';
EXEC sp_fulltext_service 'update_languages';
EXEC sys.sp_fulltext_load_thesaurus_file 1033;
я построил таблицу со следующими словами:
running
IE
Затем Выполнить
Q1.
select * from dbo.THES_TEST where Contains(Word,'FORMSOF(INFLECTIONAL,"run")');
Q1 возвращает одну строку
Q2.
select * from dbo.THES_TEST where Contains(Word,'FORMSOF(INFLECTIONAL,"jog")');
Q2 возвращает НОЛЬ строк
Что не так?
Wrt to Custom Dictionary
Лексикон Custom1033.lex
содержит х-рейтинг.
Тем не менее, приведенный ниже запрос возвращает 3 строки:
select 'A' as A,*
from sys.dm_fts_parser('x-rated', 1030,0,0);
Почему?