Я хочу иметь возможность выполнять полнотекстовый поиск по слову «нет», но постоянно получаю сообщение об ошибке.Ниже приведены шаги:
Я создал новый стоп-лист на основе системного стоп-листа, затем удалил слово «нет» из стоп-листа.
CREATE FULLTEXT STOPLIST ADSStopList FROM SYSTEM STOPLIST;
ALTER FULLTEXT STOPLIST ADSStopList DROP 'no' LANGUAGE 'English';
Я вижу, что «нет» былоудалено из стоп-листа:
select w.*
from sys.fulltext_stoplists l
inner join sys.fulltext_stopwords w on l.stoplist_id = w.stoplist_id
where language = 'English'
and l.name = 'ADSStopList'
and stopword like '%no%';
Результатами стоп-слова являются another
и now
.no
был удален.
Я запускаю тест, используя no
stopword:
Select * from sys.dm_fts_parser('no part', 1033, 5, 0)
Я получаю сообщение об ошибке:
Msg 7630, Level 15, State 3, Line 99
Syntax error near 'PART' in the full-text search condition 'NO PART'.
Если я удалю слово«Нет» из функции sys.dm_fts_parser
, все в порядке.Что я делаю не так?