我有两个 sql 服务器,第一个我想保留过去三个月的数据,第二个我想保留所有数据以获取历史报告。我知道如何进行事务复制,但我不知道如何仅复制插入和更新,我不想复制删除。
是否可以通过服务器之间的复制来做到这一点,或者您是否必须通过触发器自己编程?
我有两个 sql 服务器,第一个我想保留过去三个月的数据,第二个我想保留所有数据以获取历史报告。我知道如何进行事务复制,但我不知道如何仅复制插入和更新,我不想复制删除。
是否可以通过服务器之间的复制来做到这一点,或者您是否必须通过触发器自己编程?
在文章属性中,您可以将发布设置为不复制删除。
在文章属性页面上,只需向下滚动
Delete delivery format
并将其更改为“不复制...”请注意,如果您不复制删除,则可能会出现行或更新错误并导致问题的情况。仅当删除的行具有在主键或其他唯一约束上重复使用的值时,才会发生这种情况。如果您使用
IDENTITY
PK 列(并且复制数据上没有其他唯一索引),则只有在重新设置 ID 或有人使用IDENTITY_INSERT
. 这是使用自然键时遇到的更常见的问题。如果您预计这是一个问题,您可以在复制的副本上放置instead of
触发器以将插入转换为upsert