Acho que vc está cometendo um equivoco. Vc usa DBGrid.SelectedField para pegar 
o valor da chave (por assim dizer) que será usada para a exclusão, mas será que 
o SelectedField do DBGrid, no momento da deleção, corresponde mesmo ao campo 
que contém o CPF? Outra coisa, depois da deleção, vc fecha e depois abre a 
consulta do DBGrid?

Sds.

________________________________
> To: delphi-br@yahoogrupos.com.br
> From: [EMAIL PROTECTED]
> Date: Wed, 16 Jul 2008 17:07:55 +0000
> Subject: [delphi-br] Exclusão dbgrid!!
> 
> 
> Boa tarde,
> 
> Estou tentando excluir uma linha do dbgrid por um button, coloquei o
> seguinte:
> 
> if MessageDlg ('Tem certeza que deseja excluir a
> informação?',mtConfirmation,[mbYes,mbNo],0)= mrYes then begin
> 
> with DataModule.SQLQuery do begin
> close;
> sql.Clear;
> SQL.Add('DELETE FROM TABLE WHERE CPF =
> '+QuotedStr(DBGrid.SelectedField.AsString)+' ');
> ExecSQL;
> 
> 
> Close;
> 
> end;
> 
> Showmessage('Registro excluí­do com sucesso!');
> end
> Else
> Showmessage('Operação cancelada!');
> 
> Gostaria de quando o usuario clicasse neese buton fosse deletado a
> linha selecionada... Acontece que deletar até deleta, mas ás vezes nao
> delete a linha que está selecionada...
> 
> essa parte" +QuotedStr(DBGrid.SelectedField.AsString)+'" eh assim
> mesmo?
> 
> 
> 

_________________________________________________________________
Instale a Barra de Ferramentas com Desktop Search e ganhe EMOTICONS para o 
Messenger! É GRÁTIS!
http://www.msn.com.br/emoticonpack

Responder a