Поиск в поле с HTML-сущностями - PullRequest
0 голосов
/ 18 апреля 2011

Данные нашего клиента (SQL Server 2005) содержат html-сущности (é -> é).

Нам необходимо выполнить поиск внутри этих полей, поэтому при поиске «équipe» будет найден «équipe».

Мы не можем изменить данные, потому что клиенты наших клиентов могут редактировать эти поля по своему усмотрению (с помощью редактора HTML), поэтому, если мы удалим объекты, при следующем редактировании они могут появиться снова, и проблема будетвсе еще там.
Мы не можем использовать серверную функцию .net, потому что нам нужно найти строки, прежде чем они будут возвращены на сервер.

Я бы использовал функцию, которая заменяет сущностиих UTF-8, но это утомительно, и я думаю, что это серьезно снижает производительность поиска (что-то о полном сканировании таблицы, если я правильно помню).

Есть идеи?

Спасибо

1 Ответ

1 голос
/ 18 апреля 2011

Вам нужно только изучить и закодировать входящий поисковый запрос.Если вы преобразуете «équipe» в «équipe» и будете использовать это в предложении WHERE / FTS, тогда можно будет использовать любой индекс в этом поле, если оптимизатор сочтет это целесообразным.

...