INSERIR REGISTROS
Válido Para
Replicat
Esse parâmetro não funciona com UPDATERECORDFORMAT COMPACT.
Descrição
Use o parâmetro INSERTALLRECORDS para manter um registro de todas as operações feitas em um registro de destino, em vez de manter apenas a versão atual. INSERTALLRECORDS faz com que o Replicat insira cada alteração feita em um registro como um novo registro no banco de dados. A inserção inicial e as atualizações e deleções subsequentes são mantidas como instantâneos pontuais.
Alguns casos para usar INSERTALLRECORDS são os seguintes:
-
Para trabalhar dentro de uma instrução
MAPde exceções. Em uma instruçãoMAPde exceções,INSERTALLRECORDSfaz com que os valores de operações que geraram erros sejam inseridos como novos registros em uma tabela de exceções como parte de uma estratégia de tratamento de erros. -
Manter um histórico de transações. Ao inserir todas as alterações em uma linha específica como um novo registro no banco de dados, você pode manter um histórico de todas as alterações feitas nessa linha, em vez de manter apenas a versão atual. Cada inserção é um instantâneo pontual que pode ser consultado conforme necessário para fins de auditoria. A combinação de dados históricos com informações de transações especiais fornece uma forma de criar um banco de dados de relatório de destino mais útil.
INSERTALLRECORDS pode ser usado no nível raiz do arquivo de parâmetros para afetar todas as instruções MAP subsequentes e pode ser usado em uma instrução MAP para afetar uma tabela específica ou várias tabelas especificadas com um curinga.
Obtendo Mais Informações sobre INSERTALLRECORDS
Consulte "TABLE | MAP" para obter a sintaxe MAP.
Padrão
Nenhum
Sintaxe
INSERTALLRECORDS
Exemplos
Exemplo 1
Este exemplo mostra INSERTALLRECORDS no nível raiz do arquivo de parâmetros como parte de uma configuração de tratamento de exceções.
COLMAP (USEDEFAULTS,
TRAN_TIME = @GETENV("GGHEADER","COMMITTIMESTAMP"),
OP_TYPE = @GETENV("GGHEADER", "OPTYPE"),
BEFORE_AFTER_IND = @GETENV("GGHEADER", "BEFOREAFTERINDICATOR"),
SEQUENCE_ID = @COMPUTE(@COMPUTE(@NUMSTR(@GETENV ("RECORD", "FILESEQNO"))*100000000000)+@NUMSTR(@GETENV ("RECORD", "FILERBA")))
);
Exemplo 2
Este exemplo mostra INSERTALLRECORDS em uma instrução MAP.
REPLICAT deliv
USERIDALIAS tiger1
SOURCEDEFS /ggs/dirdef/defs
REPERROR DEFAULT, ABEND
MAP fin.accTAB, TARGET fin.custTAB, INSERTALLRECORDS;