dar um update na tabela 1 buscando dados da tabela 2
ola pessoal...adicionei um campo na tabela contasreceber(telefone), eu precisava atualizar este campo com os telefones de cada cliente. buscando os telefone na tabela cliente...como eu adicionei este campo, a tabela contasreceber vai ficar com este campo em branco ate q eu altere este registro, mas fica dificil eu ter q alterar 10000 registros, pois so vai aparecer para os registros novos....
aguardo a ajuda
aguardo a ajuda
Jose Maria
Curtidas 0
Respostas
Roberto
02/01/2015
Olá José Maria, blz?
Se eu entendi segue uma tentativa.
Na Query:
No Botão Atualizar
Não é a solução mais eficaz, mas funciona pelo Delphi.
Abraço
Se eu entendi segue uma tentativa.
Na Query:
Select Codigo_Cliente, Telefone From ContasAReceber Where Telefone = '' Order By Codigo_Cliente
No Botão Atualizar
Query1.first; //inicio da query
Clientes.First; //inicio tabela de clientes
While not Query1.eof do // enquanto não for o final da query faça
begin
If Query1.FieldByName('Codigo_Cliente').asinteger = Clientes.FieldByName('Codigo_Cliente').asinteger = then //verifica se bate o código do cliente
Begin
ContasAReceber.edit; //coloca tabela em edição
ContasAReceber.FieldByName('Telefone').asstring := Clientes.FieldByName('Telefone').asstring; //atualiza o telefone
ContasAReceber.post; //grava alteração
Query1.Next; //vai para a próxima conta a receber na query.
End
Else // se não bateu as informações da condição IF
Clientes.Next; //Passa para o próximo cliente
end;
Não é a solução mais eficaz, mas funciona pelo Delphi.
Abraço
GOSTEI 0
Marisiana Battistella
02/01/2015
Faz essa alteração direto no banco de dados e depois apenas ajusta as manutenções no Delphi para atender a essas alteração...
Qual é o banco de dados q a aplicação utiliza?
Qual é o banco de dados q a aplicação utiliza?
GOSTEI 0
Renato Rubinho
02/01/2015
Buenas,
Segue exemplo supondo que:
- O nome da tabela de clientes seja CLIFOR e sua chave seja CLI_CODIGO
- Na sua tabela CONTASRECEBER a ligação com a tabela de clientes (CLIFOR) seja o campo CLI_CODIGO
- O nome dos campos de telefone de ambas as tabelas seja CLI_FONE.
- Configurada cláusula para apenas atualizar o campo na tabela CONTASRECEBER quando o campo estiver nulo ou em branco.
Abraççç,
rrubinho
Segue exemplo supondo que:
- O nome da tabela de clientes seja CLIFOR e sua chave seja CLI_CODIGO
- Na sua tabela CONTASRECEBER a ligação com a tabela de clientes (CLIFOR) seja o campo CLI_CODIGO
- O nome dos campos de telefone de ambas as tabelas seja CLI_FONE.
- Configurada cláusula para apenas atualizar o campo na tabela CONTASRECEBER quando o campo estiver nulo ou em branco.
UPDATE
CONTASRECEBER
SET
CLI_FONE = (SELECT
CLIFOR.CLI_FONE
FROM
CLIFOR
WHERE CLIFOR.CLI_CODIGO = CONTASRECEBER.CLI_CODIGO)
WHERE CLI_FONE IS NULL OR CLI_FONE = ''
Abraççç,
rrubinho
GOSTEI 0
Jose Maria
02/01/2015
eu uso o mysql.......vou tentar aqui as dicas...qualquer coisa postarei o resultado ok....
GOSTEI 0
Jose Maria
02/01/2015
obrigado a todos pela ajuda...a dica do rrubinho resolveu o problema...deu certinho...obrigadooo...
GOSTEI 0