Alterar vários dados numa table de uma vez

Delphi

17/06/2004

Assim, que fazer uma alteração numa tabela mas não sei o procedimento

exemplo:

supondo que numa tabela de clientes eu tenha a opção ativo que é do tipo boolean.

em outro campo eu teria a idade que seria integer

aí quero que num comado todos os que tenham uma determinada idade que eu escolha, o atributo da tabela(Ativo) seja alterado para false.

Se não fui muito claro me avisem que mudo a forma de explicar.


Agradeço Antecipadamente


Henrique Rodrigues

Henrique Rodrigues

Curtidas 0

Respostas

Dankada

Dankada

17/06/2004

´Update cliente set ativo = ´´false´ WHERE idade = ´+idadeEscolhida+´ ´

creio eu que a sql eh essa, não tenho certeza para a condicao false se é assim.

qualquer coisa posta ae.


GOSTEI 0
Dankada

Dankada

17/06/2004

´Update cliente set ativo = ´´false´ WHERE idade = ´+idadeEscolhida+´ ´ creio eu que a sql eh essa, não tenho certeza para a condicao false se é assim. qualquer coisa posta ae.


corrigindo

´Update cliente set ativo = ´´false´ WHERE idade = ´+idadeEscolhida+´ ´


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

tá aí a linha qaue tenteio problema é que não sei qual a oção que vai onde está XXXXX

dados.Q_C_Prazo_Geral_Contas.XXXXX (´update C_Prazo_Geral set ativo = ´false´ WHERE cod_cliente = ´+ localizar_cliente + ´´);


GOSTEI 0
Paulo_amorim

Paulo_amorim

17/06/2004

Olá
Se for uma TQuery,

SQL.Text := ...;

ou ainda

SQL.Add( ... );

Espero que ajude
Até+


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

tem isso mas tb não deu!


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

a linha de código


dados.Q_C_Prazo_Geral_Contas.sql.text := ´update C_Prazo_Geral set ativo = false WHERE cod_cliente = ´+ localizar_cliente + ´´;


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

17/06/2004

Colega,

dados.Q_C_Prazo_Geral_Contas.sql.text := ´update C_Prazo_Geral set ativo = false WHERE cod_cliente = ´+ 
                                         IntToStr(localizar_cliente);


Se [b:084aad0906]localizar_cliente[/b:084aad0906] for string, então remova a função e os parenteses.


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

também não deu certo


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

fiz assim,

dados.Q_C_Prazo_Geral_Contas.close;
dados.Q_C_Prazo_Geral_Contas.sql.clear;
dados.Q_C_Prazo_Geral_Contas.sql.add(´select * from C_Prazo_Geral where cod_cliente = ´+ localizar_cliente);
dados.Q_C_Prazo_Geral_Contas.sql.Text := ´update C_Prazo_Geral set ativo = false WHERE cod_cliente = ´+ localizar_cliente;
dados.Q_C_Prazo_Geral_Contas.open;

aí deu uma mensagem de erro:

Q_C_Prazo_Geral_Contas: CommanText does not return a result set


mas funcionou, não sei o que é essa mensagem


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

Traduzindo ao pé da letra, ele está dizendo que a propriedade text não pode assumir nunhum valor porque o comando set não devolve valores.
poe isso é que funciona, mas aparece a mensagem na tela.


GOSTEI 0
Dankada

Dankada

17/06/2004

fiz assim, dados.Q_C_Prazo_Geral_Contas.sql.Text := ´update C_Prazo_Geral set ativo = false WHERE cod_cliente = ´+ localizar_cliente+´; aí deu uma mensagem de erro: Q_C_Prazo_Geral_Contas: CommanText does not return a result set mas funcionou, não sei o que é essa mensagem


coloca so isso

dados.Q_C_Prazo_Geral_Contas.close
dados.Q_C_Prazo_Geral_Contas.sql.Text := ´update C_Prazo_Geral set ativo = false WHERE cod_cliente = ´+ localizar_cliente+´ ´;

dados.Q_C_Prazo_Geral_Contas.ExecSQL;



GOSTEI 0
Aroldo Zanela

Aroldo Zanela

17/06/2004

Traduzindo ao pé da letra, ele está dizendo que a propriedade text não pode assumir nunhum valor porque o comando set não devolve valores. poe isso é que funciona, mas aparece a mensagem na tela.

Colega,

A tradução apropriada é: Não retorna um conjunto de dados. (Set = Conjunto). Esta resposta sempre ocorre quando se tenta utilizar o método Open para instruções DDLs ou instruções DMLs diferentes de Select. Portanto, Open para Select e ExecSQL para as demais.


GOSTEI 0
Henrique Rodrigues

Henrique Rodrigues

17/06/2004

DaNKaDa, seu código funcionou perfeitamente, obrigado.

Obrigado a todos os que me ajudaram!!!!!!!


GOSTEI 0
POSTAR