Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mauro.scarlos

Problemas com MSG 512

Recommended Posts

Bom dia, estou com um problema e não estou conseguindo resolver, pois não sou expert em SQL.

 

Tenho a seguinte query:

 

update fic_arti
set art_cbar = (select cod_novo from tmp_cod_unico n where art_refe=n.cod_antigo)
where art_refe in (select cod_antigo from tmp_cod_unico)

 

Está aparecendo a mensagem abaixo:

 

Msg 512, Level 16, State 1, Line 1
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

The statement has been terminated.

 

Entendo que o erro informa que ele está querendo ler um lote mas está lendo apenas um registro, mas não consegui resolver, nem verificando em outros foruns.

 

Espero que alguém possa me auxiliar com esse problema.

 

Muito obrigado

 

Mauro

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mauro,

creio que seu problema esteja nesta parte:

select cod_antigo from tmp_cod_unico

 

Todo subselect tem que retornar apenas um registro e no seu caso deve estar retornando o lote inteiro.

Poderia postar a estrutura das tabelas envolvidas ou explicar melhor oque vc precisa deste update?

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.