Fórum FireBird com rede #50420

08/04/2005

0

Tenho uma aplicação de delphi 7 com banco firebird em rede quando duas pessoas clicam pra gravar alguma coisa ao mesmo tempo da erro de Key Violation como posso resolver isso?


Daniel.felgar

Daniel.felgar

Responder

Posts

08/04/2005

Fsflorencio

O que ocorre é que as duas pessoas usaram o mesmo conteúdo para o(s) campo(s) de chave primária.
A melhor solução para resolver isto, é buscar o valor de um dos campos da chave primária de um generator. Generators tem a propriedade de nunca repetir o mesmo valor.

Usando uma trigger pode ser feito assim:

create trigger ... before insert
as
begin
campo = gen_id( nome_generator, 1 );
end


Responder

Gostei + 0

08/04/2005

Gandalf.nho

[b:77f9b43cba][color=red:77f9b43cba]Bloqueado por Infração às Regras de Conduta :[/color:77f9b43cba][/b:77f9b43cba]

Duplicidade
[url]http://forum.clubedelphi.net/viewtopic.php?t=61334[/url]

Para maiores esclarecimentos pode mandar-me uma [url=http://forum.clubedelphi.net/privmsg.php?mode=post&u=8378]Mensagem Particular[/url].


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar