同步复制之后,订阅数据库的标识列起始值为什么又变成1了

我用SQL Server 2005 中文版进行数据库同步,复制的方式是事务复制,主动推送。
复制成功后,能正确验证,发布数据库上改动,订阅数据库上也有改动。

但是发现一个问题,
由于发布数据库上,表主键是标识列,起始值和自增量都是默认的1,表里也有一些数据,标识的‘不可复制’项,是‘否’
在订阅数据库上,就不能正常进行数据记录的增加,会提示主键重复。
我去除主键后发现,主键的ID值是从1开始增加的,当然就跟已经存在的ID值重复了。如下
eID eData
1
2
3
4
2

这样的情况,不管是同步状态还是两边都删除同步后,都存在。
很明显是一个比较严重的问题了,
不知道哪位达人也碰到过类似问题。

网上我也查过,可以用DBCC CHECKIDENT ('table_name', RESEED)命令来把标识列的ID改成从当前最大值开始计数,
但也是后期补救,又麻烦。

有没有在同步配置的时候,或者什么时候的方法能避免这个问题呢。
望各位达人不吝赐教,多谢多谢!

作者: youxiazzz12   发布时间: 2011-06-27

没看明白你是什么问题。。。

作者: oswica   发布时间: 2011-06-30