我正在研究SQL SERVER 2012上的合并复制。我有一台中央服务器,在同一台机器上配置了发布和分发。我有另外三台机器,其中SQL SERVER 2012作为订阅者。复制工作正常,但是我在所有订阅者身上遇到以下错误
架构脚本
if exists (select * from syscolumns where name = N'TransporterID' and id = object_id(N'[dbo].[Transporter]')) if object_id(N'[dbo].[Transporter]') is not null exec('ALTER TABLE [dbo].[Transporter] DROP COLUMN TransporterID')' could not be propagated to the subscriber.
由于
答案 0 :(得分:0)
这似乎是一个失败的架构更改。您可以重新初始化订阅或跳过架构更改。如果不能重新初始化,那么您可以跳过架构更改。
您可以在表sysmergeschemachange中找到要跳过的架构更改。找到架构更改的另一种方法是执行sp_enumeratependingschemachanges:
EXEC sp_enumeratependingschemachanges
@publication = 'MyPublicationName'
从结果集中获取架构转换,然后通过执行sp_markpendingschemachange跳过架构更改。例如,如果schemaversion是22:
EXEC sp_markpendingschemachange
@publication = 'MyPublicationName',
@schemaversion = 22
@status = 'skipped'