Erro update com duas tabelas

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
rsalbano
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 76
Registrado em: Seg, 11 Jul 2011 9:55 am
Localização: Curitiba

Olá,

O update, abaixo esta apresentando erro no FROM (ora-00971 missing set keyword):

Selecionar tudo

UPDATE bancoA.tab_nomes
SET	   bancoA.tab_nomes.cod_veiculo = veic.cod_veiculo
FROM   bancoB.tab_veiculos veic
WHERE  veic.cod_veiculo = lpad(tab_nomes.A020_chassi,5) 
AND    tab_nomes.origem = 'CH' 
AND    veic.cod_veiculo <> -1;
A tabela tab_nomes, do bancoA, esta com permissão de select e update para o bancoB.

O que pode ser?
Avatar do usuário
madmax
Rank: DBA Pleno
Rank: DBA Pleno
Mensagens: 293
Registrado em: Qua, 13 Dez 2006 5:02 pm
Localização: São Paulo
Contato:
________________________________
Douglas - Madmax.

Olá rsalbano,

Este erro e referente ao SET ou seja esta errado a forma de update na clausula

Você já tentou fazer desta maneira.

Selecionar tudo

UPDATE bancoA.tab_nomes tab1
SET	 tab1.cod_veiculo = (select veic.cod_veiculo from bancoB.tab_veiculos veic 
			     where veic.cod_veiculo = lpad(tab_nomes.A020_chassi,5) and veic.cod_veiculo <> -1)
where tab1.origem = 'CH' 
;
Espero ter ajudado.
rsalbano
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 76
Registrado em: Seg, 11 Jul 2011 9:55 am
Localização: Curitiba

Funcionou.

Valeu.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante