删除复制表的外键约束

时间:2011-01-14 15:13:21

标签: sql-server merge-replication

我可以从参与合并复制的表中删除外键约束吗?如果是这样,我可以将其从发布中删除,并将此更改复制到所有订阅吗?

3 个答案:

答案 0 :(得分:2)

Making Schema Changes on Publication Databases

附近的MSDN上有专门的文章

它确实倾向于讨论限制的删除,这里:

  

建议明确命名约束。如果未明确命名约束,则SQL Server会为约束生成名称,并且这些名称在发布服务器和每个订阅服务器上都会有所不同。这可能会在复制架构更改期间导致问题。例如,如果在发布服务器上删除列并删除依赖约束,则复制将尝试在订阅服务器上删除约束。订阅服务器的丢弃将失败,因为约束的名称不同。如果由于约束命名问题导致同步失败,请在订阅服务器上手动删除约束,然后重新运行合并代理程序。

答案 1 :(得分:0)

答案 2 :(得分:0)

我已经解决了这一问题,方法是更改​​出版物上的articles属性以截断数据,而不是删除并重新创建表。

这样做之后,您需要生成一个新的快照。

欢呼