Полный текст SQL: Какие элементы не были проиндексированы? - PullRequest
2 голосов
/ 03 декабря 2010

У меня есть полнотекстовый индекс в одной из моих таблиц, который содержит некоторые метаданные и блоб документа (PDF или Doc или RTF и т. Д.)

Иногда при индексации строки возникает ошибка, и поэтому эта строка не может быть возвращена при полнотекстовом поиске.

Какой запрос я могу использовать, чтобы узнать, какие элементы НЕ были проиндексированы?

Я думал что-то вроде этого:

Выберите * из MyTable, где MyTableID НЕ В ( выберите MyTableID из MyTable где содержится (заголовок, заголовок) )

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

Есть идеи?

Приветствие Аарон

1 Ответ

0 голосов
/ 14 января 2011

Плохие новости и хорошие новости:

Плохие новости. Невозможно узнать, какие элементы не были проиндексированы, просто используя простой запрос.

Хорошие новости - Вы можете добавить дату и время в вашу таблицу с полным текстом и сохранить дату вставки для каждой записи в ней. Затем вы можете создать таблицу журнала, которая будет содержать дату последнего выполнения заполнения. Используя эту таблицу, вы можете узнать, какие записи не были проиндексированы с момента последнего заполнения индекса.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...