[firebase-br] Violação de chave primária

nosbori em yahoo.com.br nosbori em yahoo.com.br
Ter Fev 13 11:46:52 -03 2007


Bom dia pessoal,

estou com um problema:

Tenho um mesmo sistema instalado em diversas máquinas. Esse sistema em determinada hora do dia recebe um volume muito grande de informações.

Eu tenho uma tabela no meu banco de dados que armazena o Sequence de uma derminada tabela, e o problema que estou tento é que quando várias máquinas tentam salvar o registro na mesma tabela eles pegam o mesmo ID e ocorre erro de violação de chave primária.

Exemplo:

Vamos imaginar que tenho as seguintes tabelas:

TAB_APONTAMENTO

TAB_SEQUENCE

onde essa TAB_SEQUENCE controla os ID's corrente de todas as tabelas do meu banco de dados....

Quando eu vou inserir um registro na TAB_APONTAMENTO o sistema consulta o ultimo ID na TAB_SEQUENCE e insere o registro.

Problemas: Quando mais de um usuário tenta realizar um apontameto ao mesmo tempo... o sistema que estão instalado em máquinas distintas, pegam o mesmo ID e ocorre o erro...

Detalhe: Cada vez que eu consulto o ultimo ID de uma tabela, já dou um UPDATE com o valor que achei + 1....

Se alguém puder me ajudar.... eu agradeço..

Robson




Mais detalhes sobre a lista de discussão lista