Fórum Erro ao deletar, msg de erro #552009

21/04/2016

0

Precisando de uma luz.


procedure TFrmEntrada.BitBtn1Click(Sender: TObject); 
begin 
 if application.messagebox(Pchar('Deseja Excluir todos os dados desta Tabela?'), Pchar('Excluir Dados'+Self.Caption), MB_ICONQUESTION 
     + MB_YESNO) = IDYES then 
 begin 

  with DmControl.dSetPrincipal do 
   begin 
      Close; 
      SelectSQL.Add('TRUNCATE TABLE PRINCIPAL'); 
   try 
      ExecSQL; 
      SelectSQL.Add('select * from PRINCIPAL'); 
      open; 
   except 
   on E:Exception do 
   begin 
      ShowMessage('Falha na Exclusão dos Dados!'#13#10' Mensagem: '+E.Message); 
   end; 
  end; 
 end; 
end; 
end; 

end. 



Mais esse:


procedure TFrmEntrada.BitBtn1Click(Sender: TObject); 
begin 
 if application.messagebox(Pchar('Deseja Excluir todos os dados desta Tabela?'), Pchar('Excluir Dados'+Self.Caption), MB_ICONQUESTION 
     + MB_YESNO) = IDYES then 
 begin 

  with DmControl.dSetPrincipal do 
   begin 
      Close; 
      SelectSQL.Add('DELETE FROM PRINCIPAL'); 
   try 
      ExecSQL; 
      SelectSQL.Add('select * from PRINCIPAL'); 
      open; 
   except 
   on E:Exception do 
   begin 
      ShowMessage('Falha na Exclusão dos Dados!'#13#10' Mensagem: '+E.Message); 
   end; 
  end; 
 end; 
end; 
end; 

end. 



Mensagem de erro

Menssagem:Dynamic SQL Error
SQL erro code=-104
Token unknown - line2, column 10
TABLE ou DELETE


Estou utilizando o IBDataSet da Paleta Interbase
Valdenir Netto

Valdenir Netto

Responder

Posts

21/04/2016

Bin Laden

tente limpar o dataset antes

Close;
Clear;
SelectSQL.Add('DELETE FROM PRINCIPAL');
Responder

Gostei + 0

21/04/2016

Emerson Nascimento

Você está adicionando os comandos continuamente. Precisa "zerar" o comando. Algo assim:

  with DmControl.dSetPrincipal do
  begin
      Close;
      SelectSQL.Text := 'DELETE FROM PRINCIPAL';
      try
         ExecSQL;
         SelectSQL.Text := 'select * from PRINCIPAL';
         open;
      except
         on E:Exception do
         begin
            ShowMessage('Falha na Exclusão dos Dados!'#13#10' Mensagem: '+E.Message);
         end;
      end;
   end;
Responder

Gostei + 0

24/04/2016

Valdenir Netto

É somente isso mesmo?
Responder

Gostei + 0

25/04/2016

Natanael Ferreira

Como você está fazendo duas operações seguidas com o mesmo dataset, experimente fechá-lo (close) entre estas operações:

with DmControl.dSetPrincipal do
begin
    Close;
    SelectSQL.Text := 'DELETE FROM PRINCIPAL';
    try
       ExecSQL;
       Close;
       SelectSQL.Text := 'select * from PRINCIPAL';
       open;
    except
       on E:Exception do
       begin
          ShowMessage('Falha na Exclusão dos Dados!'#13#10' Mensagem: '+E.Message);
       end;
    end;
 end;
Responder

Gostei + 0

26/04/2016

Valdenir Netto

Certinho Natanael.

Obrigado Bin Laden, Natanael.
Responder

Gostei + 0

26/04/2016

Valdenir Netto

Certinho Natanael.

Obrigado Bin Laden, Natanael.
Responder

Gostei + 0

29/04/2016

Valdenir Netto

Podem fechar o post.
Responder

Gostei + 0

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

Aceitar