Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 r2 复制错误_Sql Server 2008 R2_Database Replication_Transactional Replication - Fatal编程技术网

Sql server 2008 r2 复制错误

Sql server 2008 r2 复制错误,sql-server-2008-r2,database-replication,transactional-replication,Sql Server 2008 R2,Database Replication,Transactional Replication,我的一个事务复制开始抛出错误: ALTER TABLE语句与外键约束“FK_Name”冲突。冲突发生在数据库“database”、表“dbo.table”、列“ID”中。(来源:MSSQLServer,错误号:547) 我已经从发布服务器和订阅服务器中删除了外键约束,创建了一个新快照并重新初始化了复制,但仍然收到相同的错误 经过一些搜索,我发现有三个表是由复制创建的(在订阅服务器上): 在这两个表中,我看到了与已删除的FK 我从那些表中删除了行,但仍然会得到错误 你知道怎么解决这个问题吗 我不建

我的一个事务复制开始抛出错误:

ALTER TABLE语句与外键约束“FK_Name”冲突。冲突发生在数据库“database”、表“dbo.table”、列“ID”中。(来源:MSSQLServer,错误号:547)

我已经从发布服务器和订阅服务器中删除了
外键
约束,创建了一个新快照并重新初始化了复制,但仍然收到相同的错误

经过一些搜索,我发现有三个表是由复制创建的(在订阅服务器上):

在这两个表中,我看到了与已删除的
FK

我从那些表中删除了行,但仍然会得到错误


你知道怎么解决这个问题吗

我不建议更改系统表,因为它们彼此高度依赖。机会是,基于你的行为,你无法修复

如果发布服务器上没有发生错误(在您删除约束之前),那么很显然,有人已从订阅服务器表中删除了。。。如果可以识别丢失的行,则可以在订阅服务器上重新插入该行,复制可能会自行修复

在这一点上,删除订阅并重新构建订阅可能更简单、更干净、更快

dbo.MSsavedforeignkeys
dbo.MSsavedforeignkeycolumns
dbo.MSsavedforeignkeyextendedproperties