假设我有两个数据库,一个用于开发,一个用于维护,例如,两个数据库都有相同的表,有人在数据库dev中添加Table1(这是一个字典表)的记录,但是他忘了将它插入Table1在维护中,所以id变得不是sincronizad,我们最终会在两个数据库中使用相同的名称但不同的ID。
使用外部序列保持这两个表同步的最佳方法是什么?触发?
答案 0 :(得分:1)
最好的解决方案是避免使用身份作为主键。身份可以构成良好的群集密钥,但不一定是主密钥。
否则你可以安排从Prod到Dev的数据库刷新,但是你要消除Dev中的所有工作,所以我每个月只做一次。
或者使用Identity Insert选项从Prod重新加载该表的数据的SSIS包。
答案 1 :(得分:0)
以下是我的建议:维护更容易。
由于这些不是prod数据库,因此请保留其中一个数据库表作为实际的真实来源。通过SSIS作业或手动数据导入实用程序(默认情况下随SQL Server安装提供)定期覆盖另一个实用程序