Fórum Nível de Commit #28238
24/08/2005
0
Pessoal,
existe alguma maneira de dentro de um batch (arquivo de lote) fazer um commit apenas para uma tabela ou um registro?
Explicando melhor:
tenho um sequência de tarefas:
1 - lê dados da tabela A, tabela B, Tabela C.
2- insiro os dados das tabelas acima (A,B e C) em um unico campo da Tabela D (concatenado) + um incremento (1, 2,3..).
3- começo a criar várias transações com base no campo da tabela D.
4- volta ao passo 1 até recriar outro valor (diferente) para o campo na tabela D.
5 - somente depois de finalizar todas as transações acima é que posso validar (commit) o campo criado na tabela D. Caso contrário eu utilizo o roolback para desfazer tudo.
Acontece que na sequência acima corre-se o risco de outra sequência atualizar o campo da tablea D, antes da primeira sequência terminar, o que acarretaria na duplicação desta ´chave´, outro agravante é que essas chaves são geradas n vezes durante a mesma sequência.
O que eu queria na verdade é fazer um commit apenas para a tabela D, sem afetar as demais transações do arquivo Batch.
Agradeço,
Gilberto
existe alguma maneira de dentro de um batch (arquivo de lote) fazer um commit apenas para uma tabela ou um registro?
Explicando melhor:
tenho um sequência de tarefas:
1 - lê dados da tabela A, tabela B, Tabela C.
2- insiro os dados das tabelas acima (A,B e C) em um unico campo da Tabela D (concatenado) + um incremento (1, 2,3..).
3- começo a criar várias transações com base no campo da tabela D.
4- volta ao passo 1 até recriar outro valor (diferente) para o campo na tabela D.
5 - somente depois de finalizar todas as transações acima é que posso validar (commit) o campo criado na tabela D. Caso contrário eu utilizo o roolback para desfazer tudo.
Acontece que na sequência acima corre-se o risco de outra sequência atualizar o campo da tablea D, antes da primeira sequência terminar, o que acarretaria na duplicação desta ´chave´, outro agravante é que essas chaves são geradas n vezes durante a mesma sequência.
O que eu queria na verdade é fazer um commit apenas para a tabela D, sem afetar as demais transações do arquivo Batch.
Agradeço,
Gilberto
Gilberto Assis
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)