GARANTIR DESCONTO

Fórum EXCLUIR REGISTRO DE UMA TABELA (PROBLEMA)??? #203285

28/12/2003

0

:arrow: Olá Galera do CLube Delphi

:roll: Meu problema é o seguinte, tenho um projeto e nele tem uma parte de Agendar compromisso, fiz uma pesquisa dos Compromisso em Sql por ordenando por mês, Trabalho com Delphi 6 e Paradox, o problema é que coloquei a pesquisa em um ComboBox, quando solicito o mês, é filtrado todos os Compromissos somente daquele mês que é mostra em um DBGrid, até tudo bem, mas o problema é que quero colocar um botão para excluir o compromisso selecionado no DBGrid, só que já tentei vários comandos e sempre aparece esta mensagem de erro:

´´Table is read only´´

Ou seja a tabela é somente leitura, sou praticamente programador iniciante, gostaria da ajuda de vcs, já tentei fazer com que a {query.database.readonly = false}, fechei a tabela, e abri, mas sempre aparece a Mensagem.

:idea: ´´ alguém puder me dar pelo menos uma dica´´

:wink: Desde já, Muito obrigado!


Jfalexandre

Jfalexandre

Responder

Posts

29/12/2003

Tnaires

Olá alexandre
Explique melhor por favor. Vc tá tentando excluir o registro diretamente do resultado da query?
A única maneira q eu conheço (mas sou iniciante tb :wink: ) d alterar os resultados d uma query é utilizando o componente UpdateSQL (paleta BDE). Mas vc pode fzer tb o seguinte: supomos q Query1 seja o resultado da consulta, vamos criar uma Query2 com o seguinte SQL:
DELETE FROM TabCompromissos WHERE data LIKE :data
Qdo o usuário clicar no botão, faça o seguinte:
  Query2.ParamByName(´data´).Value := Query1data.Value;
  Query2.ExecSQL;  // Executa a query pra deletar o compromisso

Espero q dê certo. Sucesso


Responder

Gostei + 0

29/12/2003

Jfalexandre

Obrigado!
Vou tentar depois retorno...


Responder

Gostei + 0

29/12/2003

Lipsil

Kra,
já tive este problema, mas é simples, faça o seguinte:
clique com o botão direito no arquivo aí da tabela, e clique em propriedades, depois desmarque a caixa ´Somente leitura.´

pronto, achoq é isso aí ;)


Responder

Gostei + 0

29/12/2003

Nigro

amigo...
Creio que você esteja tentando apagar um registro após fazer um select, adianto para você que isso não é possível, pois um select na verdade é apenas um view do seu banco e não o banco propriamente dito, aconselho fazer uma rotina em SQL também para apagar isso pois você tem que apagar do banco e não do select.


Responder

Gostei + 0

29/12/2003

Joe Ventrue

se eu fosse vc, antes de criar rotina SQL para isso, tentaria:

:arrow: Mude a Propriedade da query REQUEST LIVE para True;
(...acho q é essa a chave do problema...)
:arrow: depois, coloque no evento do botao a simples linha:
dm.NOMEDAQUERY.delete;

Obs.: Eu sempre uso POPMENU para fazer a exclusao...

:arrow: Entao, se quiser, vc pode criar um popmenu com um opcao(EXCLUIR) e coloque o codigo q descrevi acima...
:arrow: na Propriedade POPMENU da DBGRID coloque o seu POPMENU...

espero ter ajudado...

Abraços
Joe Ventrue


Responder

Gostei + 0

31/12/2003

Jfalexandre

Olá Galera, tenho que excluir uma rotina de uma Query1, a rotina é uma pesquisa, onde a busca foi feita através do select * from Tabela, fiquei sabendo que é possível através do componente UpdateSql deletar essa rotina mesmo sendo apenas um filtro, como uso este componente, tentei mas nada funcionou.

Se alguém puder me ajudar, desde já obrigado!


Responder

Gostei + 0

01/01/2004

Joe Ventrue

limpa rotina? como assim??
vc quer limpar as instrucoes da sql, é isso né?

Se vc quiser limpar o q ta na sql é só usar o ´clear´

tipo:

Query1.Sql.Clear;

naum sei se é isso q vc quer, mas isso limpa qualquer rotina q vc colocou na Query...

espero ter ajudado...
se nao...me desculpe...

Um Abraço
Joe Ventrue


Responder

Gostei + 0

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

Aceitar