Ir para conteúdo
Fórum Script Brasil
  • 0

Deletar Via Sql (RESOLVIDO)


Arlon

Pergunta

Preciso excluir um registro que foi obtido através da consulta à uma tabela. Esse registro está numa query. Tentei usar o findnearest para colocar o ponteiro da tabela direto no registro que desejo excluir, mas o problema é que não sei se esse comando aceita dois parâmetros. Com um só parãmeto pode ser usado como abaixo:

DM.TBItens.FindNearest([DM.QrItens.FieldByName('Cod_Leilao').AsString]);

Nesse caso, utilizo o parâmetro Cod_Leilao, mas a consulta se baseia em dois campos: Cod_Leilao e Cod_Cliente. Existe uma forma de usar com os dois parâmetros?

Tentei também usar uma query direto para excluir, com o seguinte código:

DM.QrDeleteItens.Close;

DM.QrDeleteItens.Sql.Text := 'Select * From Itens ' +

'Where Cod_Leilao =:Cod_LeilaoBusca and Cod_Cliente =:Cod_ClienteBusca';

DM.QrDeleteItens.Params[0].AsString := Edit1.Text;

DM.QrDeleteItens.Params[1].AsString := Edit2.Text;

DM.QrDeleteItens.Delete;

mas deu o seguinte erro: "QrDeleteItens: Cannot perform this operation in closed dataset".

Também tentei substituindo a última linha por DM.QrItens.Open;

o erro resultante foi: "Error creating cursor handle".

Acho que o mais viável seria usar o findnearest, mas esse comando pode ser usado com 2 parâmetros??

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Olá Arlon, Tenta usar isso:

DM.QrDeleteItens.Sql.Clear;
DM.QrDeleteItens.Sql.Add('Delete From Itens');
DM.QrDeleteItens.Sql.Add('Where Cod_Leilao =:Cod_LeilaoBusca and Cod_Cliente =:Cod_ClienteBusca');
DM.QrDeleteItens.ParamByName('Cod_LeilaoBusca').AsString := Edit1.Text;
DM.QrDeleteItens.ParamByName('Cod_ClienteBusca').AsString := Edit2.Text;
DM.QrDeleteItens.ExecSQL;

falou!!! wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu cara, deu certo.

O ExecSQL tem que ser usado no lugar do Query.Open sempre que não for usado o select, ou seja, sempre que for excluir, editar ou inserir via SQL?

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...