[firebase-br] Ajuda num UPDATE

Ederson R. F. Lima ed.rodrigo em gmail.com
Sex Jun 25 11:00:58 -03 2010


Sim, na minha outra mensagem eu disse que você tem que escrever um subselect
aqui:

 set a.CPR_FUNCOMISS = TCLASSIFICADO.CD_FUNC

update CONTPGRC a
        set a.CPR_FUNCOMISS = (select CD_FUNC from TCLASSIFICADO where
TCLASSIFICADO.CD_CLA = a.CLA_CODIGO)
        where a.CLA_CODIGO = (select CD_CLA from
                                              TCLASSIFICADO where
TCLASSIFICADO.CD_CLA = a.CLA_CODIGO);

Tenta esse agora! Esse script não é eficiente, mas deve resolver seu
problema. Passar os valores como parâmetros seria uma boa saída, ou talvez
alguém da lista te apresente um scritp mais eficiente, tem muito nego
esperto aqui!

Abraço!

Em 25 de junho de 2010 10:46, Henrique Ribeiro <kikeribeiro em gmail.com>escreveu:

> Bom dia amigo,
>
> este script:
>
> "update CONTPGRC a
>         set a.CPR_FUNCOMISS = TCLASSIFICADO.CD_FUNC
>         where a.CLA_CODIGO = (select TCLASSIFICADO.CD_CLA from
> TCLASSIFICADO where TCLASSIFICADO.CD_CLA = a.CLA_CODIGO);"
>
> Dá o erro:"Column does not belong to referenced table.
> Dynamic SQL Error.
> SQL error code = -206.
> Column unknown.
> TCLASSIFICADO.CD_FUNC.
> At line 2, column 46."
>
> Estou rodando pelo IBExpert.
>
> Ainda não deu certo.
>
> Um abraço e muito obrigado pela ajuda.
>
> Em 25 de junho de 2010 10:36, Ederson R. F. Lima <ed.rodrigo em gmail.com
> >escreveu:
>
> > update CONTPGRC a
> >          set a.CPR_FUNCOMISS = TCLASSIFICADOS.CD_FUNC
> >          where a.CLA_CODIGO = (select CD_CLA from TCLASSIFICADOS where
> > CD_CLA = a.CLA_CODIGO);
> >
> > Assim não dá?
> >
> > Espero ter ajudado!
> >
> > Em 25 de junho de 2010 10:16, Henrique Ribeiro <kikeribeiro em gmail.com
> > >escreveu:
> >
> > > Bom dia senhores,
> > >
> > > preciso de uma ajuda numa atualização de tabela com dados cruzados de
> > outra
> > > tabela.
> > >
> > > Minha situação é a seguinte:
> > >
> > > Tenho as tabelas "CONTPGRC"  e  "TCLASSIFICADOS".
> > >
> > > Preciso atualizar o campo CONTPGRC.CPR_FUNCOMISS com o valor do campo
> > > TCLASSIFICADOS.CD_FUNC usando como condição o campo CONTPGRC.CLA_CODIGO
> =
> > > TCLASSIFICADOS.CD_CLA
> > >
> > > Alguém pode me ajudar a montar o script?
> > >
> > > Agradeço desde já qualquer ajuda.
> > >
> > > Uso o Firebird 2.1.0.17798(win32) e Delphi 7.
> > >
> > > Um grande abraço para todos e dá-lhe Brasil!!!
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > > http://www.firebase.com.br/fb/artigo.php?id=1107
> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > >
> >
> >
> >
> > --
> > - Éderson R. F. Lima
> > -- Engenharia da Computação / 9º Termo
> > --- Araçatuba/SP
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
- Éderson R. F. Lima
-- Engenharia da Computação / 9º Termo
--- Araçatuba/SP



Mais detalhes sobre a lista de discussão lista