Привет всем.

Вот, сижу, прикручиваю к базе данных механизм протоколирования
идентификаторов изменившихся объектов для последующей перестройки
текстового индекса. То бишь поменялся объект - у него сбросился
текстовый индекс и в таблицу журнала изменений попал его ID. Все это,
типа, для оптимизации процесса перестройки индекса на базе комбинаций
слов.

Таблица журнала изменений у меня есть готовая - юзается в репликации -
RPL_JOURNAL

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

Ну, думаю, по аналогии добавлю колонку TXT_IDX_REBUILD_ID (для
отмечания обработанных записей) и не буду париться. Причем, думаю,
исходное определение RPL_JOURBAL править не буду - я его позже (в
процессе генерации базы данных) через ALTER модернизирую.

Тут обнаружил, что на RPL_JOURNAL висит вьюха (V_RPL_JOURNAL), которая
публикует колонку PACK_ID.

И голова подумала - а почему я не могу через ALTER модернизировать
V_RPL_JOURNAL, чтобы в последней появилась колонка  TXT_IDX_REBUILD_ID

Ну типа
ALTER VIEW V_RPL_JOURNAL
ADD RPL_JOURNAL.TXT_IDX_REBUILD_ID.

Гы.

И еще она подумала - а как мне через ALTER RPL_JOURNAL указать позицию
новой колонки TXT_IDX_REBUILD_ID что бы она шла после PACK_ID. Типа

ALTER TABLE RPL_JOURNAL
 ALTER TXT_IDX_REBUILD_ID POSITION AFTER PACK_ID

Не кидайте в меня помидорами - у нас горячей воды нет. Отмываться
будет тяжко :)

Коваленко Дмитрий.

Ответить