Настройте Oracle Text для индексирования значений нескольких столбцов в таблицах Oracle - PullRequest
7 голосов
/ 21 февраля 2009

У меня есть набор таблиц Oracle, которые описывают информацию о владельцах собственности. Имена владельцев и другие текстовые значения хранятся в нескольких полях в нескольких связанных таблицах для каждого владельца. Я хотел бы проиндексировать содержимое этих полей. Моя цель - предоставить одно поле, в котором пользователь может вводить ключевые слова для поиска владельцев.

Как мне настроить Oracle Text для этого?

1 Ответ

10 голосов
/ 22 февраля 2009

Вам просто нужно создать предпочтение для нескольких хранилищ данных и передать его в качестве параметра в индекс.

begin
ctx_ddl.create_preference('my_multi', 'MULTI_COLUMN_DATASTORE');
ctx_ddl.set_attribute('my_multi', 'columns', 'column1, column2, column3');
end;


create index myindex on mytable(docs) 
  indextype is ctxsys.context 
  parameters ('DATASTORE my_multi');

http://download.oracle.com/docs/cd/B19306_01/text.102/b14217/ind.htm#sthref281

...