Добавление ограничения внешнего ключа завершается неудачно на подписчике - PullRequest
1 голос
/ 28 апреля 2011

У меня есть реплицированная база данных с использованием SQL Server 2008. Вот что я пытаюсь сделать.

  1. Создать новую таблицу (MyNewTable)
  2. Создать столбец в существующей таблице (MyExistingTable)
  3. Создайте ограничение FK для этого столбца (в # 2), так как оно указывает на PK для новой таблицы из # 1.

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

Сценарий схемы "сценарий добавления ограничения внешнего ключа" не может быть передан подписчику. (Источник: MSSQL_REPL, номер ошибки: MSSQL_REPL-2147201001) Получить помощь: http://help/MSSQL_REPL-2147201001 Внешний ключ «MyFKConstraint» ссылается на недопустимую таблицу «MyNewTable» (Источник: MSSQLServer, номер ошибки: 1767)

Хотя этот скрипт отлично работает на издателе. Некоторые люди, кажется, полагают, что добавить ограничение внешнего ключа нельзя в реплицируемой среде, когда она создается между существующей таблицей и новой таблицей. Мне это сложно купить, хотя я новичок в репликации SQL Server. Есть мысли?

1 Ответ

0 голосов
/ 30 октября 2012

Внешний ключ "MyFKConstraint" ссылается на недопустимую таблицу "MyNewTable

Является ли "MyNewTable" в базе данных подписчиков?

если нет, вы можете использовать «НЕ ДЛЯ РЕПЛИКАЦИИ» при создании FK

...