Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 добавление поля в таблицу на которой CDC  [new]
mos
Member

Откуда: Vilnius
Сообщений: 701
Добрый день,

может кто нашел решение, добавляем новую колонку в таблицу и хотим отслеживать изменение данных по этой колонке, как переконфигурировать CDC, может как автоматически?
4 янв 10, 12:21    [8146046]     Ответить | Цитировать Сообщить модератору
 Re: добавление поля в таблицу на которой CDC  [new]
Павел-П
Guest
Нет, не может.

Собственно говоря, в этом и есть очень большой недостаток CDC.
При добавлении/обновлении/удалении колонок изменений в CDC инстансе не происходит.
1. С одной стороны, это хорошо. Ибо все продолжает работать стабильно.
2. С другой стороны, очень плохо. Ибо если вы довольно часто ставите изменения в БД (таблицы), то Вам прийдется тратить довольно большие усилия для поддержания CDC в актуальном состоянии.
2.1 Microsoft предлагает в этом случае создавать новый capture instance (с новой колонкой/измененной колонкой). Но это приводит к дублированию данных, + у Вас вместо одного хранилища изменений получается два. А тут еще и ограничение существует, что capture instance может быть только 2 шт.
2.2. Сейчас при необходимости используем извращенный механизм. Сначала даныне из старого capture instance копируется в обычную таблицу. Затем пересоздаем новый capture instance (старый убиваем) и заливаем туда данные из созданной таблицы.
Недостатки этого метода тоже понятны: необходимо переливать большие объемы БД.
5 янв 10, 10:03    [8148415]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить