Quero criar replicação no SQL Server e mover os registros que foram alterados no último ano para o ambiente de testes. Como adicionei um filtro para o último ano, quando a replicação é executada, apenas os registros do último ano são adicionados ao ambiente de desenvolvimento e os registros anteriores a 1 ano no ambiente de desenvolvimento são excluídos.
Como posso adicionar registros recém-adicionados ao ambiente de desenvolvimento sem excluir registros com mais de 1 ano no ambiente de desenvolvimento?
A replicação não é necessariamente projetada (embora seja possível, com algumas limitações) para criar dados nas tabelas do Assinante que não sejam originados do Publicador.
Embora eu esteja supondo que quando você reinicializou a publicação, você tem as propriedades dos artigos
Action if name is in use
definidas comoDrop...
,Delete...
ouTruncate...
, o que limparia a tabela no lado do assinante antes de sincronizar os dados do editor.Você pode alterar essa propriedade para
Do Nothing
e ela manterá as linhas originais que estão no lado do Assinante. Mas então você precisará lidar manualmente com a prevenção de sincronização de linhas duplicadas, talvez com um script de pré-inicialização de instantâneo.Propriedades de artigo de exemplo definidas como
Truncate...
: