Создать репликацию сервера Sql с некоторым преобразованием данных (во время или в конце) - PullRequest
2 голосов
/ 13 сентября 2010

Я запускаю репликацию сервера sql для синхронизации таблицы с отдельной (отчетной) базой данных.

В исходной базе данных все записи имеют значение DateTime (не так уж необычно), но оно сохраняется не как DateTime, а как Guid ..., что указывает на таблицу, которая содержит все метки времени (по одной на каждую минуту).

Теперь я хотел бы, чтобы во время процесса репликации (или в конце, или в непрерывном режиме в целевой базе данных) был выполнен поиск метки времени (в значении datetime) в базе данных TimeStamps и заполнение дополнительного поля в целевая база данных с этим DateTime значением.

Причина в том, что я могу запрашивать целевую базу данных в определенные даты без необходимости присоединять ее к базе данных временных меток.

Возможно ли это?

Я видел в качестве свойства репликации свойство 'DTS', которое заставляет меня думать, что я могу каким-то образом указать пакет DTS, но свойство не включено, и я подумал, что DTS устарела?

1 Ответ

4 голосов
/ 13 сентября 2010

Предполагая репликацию транзакций, я бы настраивал хранимые процедуры sp_MSins_YourTable и sp_MSupd_YourTable на подписчике для дополнительного поиска / перевода. Просто убедитесь, что вы полностью задокументировали эту настройку, так как в любой момент, когда вам придется отбрасывать / повторять репликацию, ваши пользовательские процессы будут снова заменены стандартными.

...