Sql Server 2008 - удалить слово из системного списка остановок? - PullRequest
0 голосов
/ 08 июля 2011

Я пытаюсь удалить символ "-" из списка стоп-слов, но не могу. Я создал свой пользовательский список остановок, который унаследован от системного списка остановок. Когда я пытаюсь удалить «-» из списка остановок, сервер sql сообщает, что этот символ отсутствует в списке остановок. Это SQL-оператор, который я использую:

ALTER FULLTEXT STOPLIST "mystoplist" DROP  '-' LANGUAGE 'Brazilian';

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

Я полагаю, что сервер sql каким-то образом использует системный список остановок, но я не знаю, как удалять символы из системного списка остановок.

Мне нужно, чтобы строки типа «blablabla-blablala» (есть некоторые португальские слова, в которых используется символ «-») можно найти только при выполнении запроса, подобного:

where contains(field, "blablabla-blablala")

И никогда не будет найден при выполнении запроса, подобного:

where contains(field, "blablabla")

Есть идеи?

1 Ответ

0 голосов
/ 08 июля 2011

Оказалось, что это проблема средства разбиения по словам, а не списка остановок, как описано здесь .

"/" считается средством разбиения по словам для некоторых языков (включая мой).

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

...