我在两台不同的机器上运行相同的数据库。数据库广泛使用身份列,并且这些表发生了非常可怕的冲突。我现在想将这两者合并在一起,然后再解决我可能会做的根本问题
A) 使用 GUID(笨拙但无处不在) B) 分配身份范围,有点像 naff,但意味着您仍然可以按顺序访问记录,敲击基本 Sql 并轻松选择记录,它可以识别哪台机器源自数据。
我的问题是,在其中一个数据库上重新键入(即更改主键)以使数据不再发生冲突的最佳方法是什么。我们只查看总共 6 个表,但 3 个表中有很多行 ~ 2M。
更新 - 是否有任何真正的 sql 代码可以做到这一点,我知道 Identity Insert 等。我之前已经以多种不优雅的方式解决了这个问题,我一直在寻找优雅的解决方案,最好有一个不错的解决方案TSQL SP 来完成这项工作——如果不存在,我会将其编码并放置在 wiki 上。