Buscar

Evitando o erro de key violation

Código

{O código abaixo deve ser inserido no evento OnPostError do componente de banco de dados (Table ou Query). Toda vez que ocorrer um erro de gravação no banco de dados este evento será executado, sendo que na variável de parâmetro "E" deste procedimento é armazenado a mensagem que será apresentada na tela.

No caso de Key Violation a mensagem é exatamente esta: "Key violation.".

Para realizar um tratamento deste erro, testa-se se a mensagem ocorrida é "Key violation.', se for verdadeiro o processo de gravação é abortado (Action := daAbort).}



Procedure TForm1.Table1PostError(DataSet: TDataSet; E: EDatabaseError;var Action: TDataAction);
Var
ErroMens :String;
begin
ErroMens := E.Message;
if ErroMens = 'Key violation.' then begin ShowMessage('Chave Primária Inválida !');
action := daAbort;
end;
end;

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Object pascal
Adicionada dia: 13/06/03
Por: Felipe Monteiro
Visualizada: 7216 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009