Alterar determinado Registro de um Tabela

Delphi

14/01/2004

Ae galera...tudo em cima??

Queria saber como alterar um deterinado registro de outra tabela, ou seja, eu quero incrementar um campo do tipo MONEY numa tabela paradox em um registro especifico...


alguem pode me ajudar??

Abraços
Joe Ventrue


Joe Ventrue

Joe Ventrue

Curtidas 0

Respostas

Joe Ventrue

Joe Ventrue

14/01/2004

ninguem sabe me explica?


GOSTEI 0
Paulo_amorim

Paulo_amorim

14/01/2004

Olá

ueh...uma query com UPDATE <campo> SET <campo> = <par> nao funcionaria?

[]´s


GOSTEI 0
Joe Ventrue

Joe Ventrue

14/01/2004

certo Paulo...mas agora, eu vou ampliar o problema:
tipo q vc tem q localizar determinado registro, digamos q seja o 2° registro, depois fazemos o UPDATE, mas o valor incrementado deve ser a soma de dois DBEdits...

vou explicar um pouco melhor:

digamos q vc tenha 2 tabelas: 1 de MOVIMENTOS e outra de CONTAS. Na primeira tabela, nos temos dois campos importantes que sao:
...
- favorecido (A)
- valor ($)
...
na segunda tabela, nos temos:
...
- conta (A)
- saldo ($)
...

Quando incluimos um movimento, o programa vai até a tabela de contas e incrementa o valor do saldo com o valor do movimento. Entendeu???

Obrigado pela atenção
Joe Ventrue


GOSTEI 0
Paulo_amorim

Paulo_amorim

14/01/2004

bom...eu testei algo parecido aki...
e funcionou..tente assim


update CONTA set saldo = saldo + (select valor from movimento where favorecido = :Fav <coloque aqui a chave primaria>) where conta = :Conta


GOSTEI 0
Joe Ventrue

Joe Ventrue

14/01/2004

Agradeço pela paciencia...

Kra...tipo q fiz assim, com base na sua dica:

if ed_pagamento.Text > ´´ then begin dm.qr_tnoc2.Close; dm.qr_tnoc2.SQL.Clear; dm.qr_tnoc2.sql.Add(´ UPDATE ciel_tnoc SET saldo = saldo + (select Pagamento From ciel_vom ´); dm.qr_tnoc2.sql.Add(´ where numero = :numero) ´); dm.qr_tnoc2.sql.Add(´ WHERE conta = :conta ´); dm.qr_tnoc2.ParamByName(´numero´).asFloat := StrToFloat(ed_numero.Text); dm.qr_tnoc2.ParamByName(´conta´).asFloat := StrToFloat(DBEdit3.Text); dm.qr_tnoc2.ExecSQL; end;


mas ainda nao deu certo...e agora da o erro TYPE IN MISMATCH IN EXPRESSION


GOSTEI 0
Joe Ventrue

Joe Ventrue

14/01/2004

(corrigindo) olha soh...eu pensei o seguinte agora:
tipo q tem como eu colocar uma query no Formulario de contas, aí no
OnActive dele eu coloco o Query pra abrir...

coloquei o seguinte:

Update ciel_tnoc Set Saldo = (Select SUM(deposito) - SUM(pagamento) From ciel_vom)


e aí...so tem um pepino: tipo q sao muitas contas...como vo faze pra atualiza isso em cada conta...
no meu ver, a síntese da instrucao ta certa, mas precisa de mais alguma coisa, de um parametro, sei la...

será q é por aí?


GOSTEI 0
Paulo_amorim

Paulo_amorim

14/01/2004

Olá

pode ser assim sim...mas acho que seria bom vc especifficar na query qual o SUM a ser aplicado:


Update ciel_tnoc Set Saldo =
(Select SUM(deposito) - SUM(pagamento) From ciel_vom Where favorecido = <par>)


vc pode fazer um for pra aplicar o update a cada conta, passando o parametro da conta... pode resolver...
nao sei se eh assim, mas creio que possa ajudar


GOSTEI 0
Joe Ventrue

Joe Ventrue

14/01/2004

eu nu sei...

eu vou tentar...vamo ve o q q da...

Valew kra...


GOSTEI 0
Joe Ventrue

Joe Ventrue

14/01/2004

nu deu nao kra...


GOSTEI 0
POSTAR