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

Откуда: Минск
Сообщений: 210
Здравствуйте.
MSSQL 2008R2 EE

Настроена односторонняя транзакционная репликация с @identityrangemanagementoption = N'manual' в каждом Article.
MSDN гласит что при ручном режиме репликация устанавливает параметр NOT FOR REPLICATION для identity столбцов идентификаторов на подписчике.
http://msdn.microsoft.com/ru-ru/library/ms152543(v=sql.105).aspx

Но у меня при этом на паблишере тоже устанавливается NOT FOR REPLICATION для всех identity столбцов.

Вопрос: как нужно настраивать репликацию чтоб NOT FOR REPLICATION был только на подписчике?

Артиклы добавляю следующим образом:

EXEC MyDB.dbo.sp_addarticle
@publication = MyDB,
@article = BonusTransactionCapturing,
@source_owner = dbo,
@source_object = BonusTransactionCapturing,
@type = N'logbased',
@description = null,
@creation_script = null,
@pre_creation_cmd = N'drop',
@schema_option = 0x000000000803509F,
@force_invalidate_snapshot = 1,
@identityrangemanagementoption = N'manual',
@destination_table = BonusTransactionCapturing,
@destination_owner = dbo,
@vertical_partition = N'false',
@auto_identity_range = 'false'
7 фев 13, 16:52    [13892613]     Ответить | Цитировать Сообщить модератору
 Re: Transaction replication Not for replication на publisher  [new]
invm
Member

Откуда: Москва
Сообщений: 9833
dobrik
Вопрос: как нужно настраивать репликацию чтоб NOT FOR REPLICATION был только на подписчике?
Чем вам мешает эта настройка на издателе?
7 фев 13, 18:30    [13893366]     Ответить | Цитировать Сообщить модератору
 Re: Transaction replication Not for replication на publisher  [new]
dobrik
Member

Откуда: Минск
Сообщений: 210
invm
dobrik
Вопрос: как нужно настраивать репликацию чтоб NOT FOR REPLICATION был только на подписчике?
Чем вам мешает эта настройка на издателе?


Мешает тем, что в скрипты, сгенеренные компаре тулом (скрипты сравнения баз), попадают эти столбцы, и когда делаем билд с теста на лайв, то скрипты пытаются удалить NOT FOR REPLICATION у всех identity столбцов. И т.к. эти столбцы в репликации, то ессно я получаю ошибку накатывания скриптов.
7 фев 13, 21:51    [13893999]     Ответить | Цитировать Сообщить модератору
 Re: Transaction replication Not for replication на publisher  [new]
invm
Member

Откуда: Москва
Сообщений: 9833
Можно раз и навсегда установить not for replication для всех столбцов с identity.
Можно сбрасывать not for replication сразу после добавления статьи в публикацию.

Первый вариант предпочтительней.
7 фев 13, 22:14    [13894059]     Ответить | Цитировать Сообщить модератору
 Re: Transaction replication Not for replication на publisher  [new]
что-то_лень_логиниться
Guest
dobrik,

многие тулзы сравнения имеют опцию игнрорирования "not for replication" при сравнении.
Но, имхо, первый вариант, предлженный invm, предпочтительней.
8 фев 13, 05:12    [13894723]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить