Fórum Erro em Update com Sub-select #131161

26/03/2010

0

Caro colegas,   Alguém pode me ajudar a descobrir qual o problema com este comando ?  
 
UPDATE ESTOQUEFILIAL SET QUANTIDADE = (QUANTIDADE + 59)
WHERE COD_FILIAL = 1
AND COD_PROD = (SELECT COD_PROD FROM PRODUTOS WHERE COD_BARRA = '7894321711263')

Quando executo o mesmo, me retorna :   Unsuccessful execution caused by a system error that precludes
successful execution of subsequent statements.
internal gds software consistency check (cannot restore singleton select data (284), file: rse.cpp line: 3218).   O IbExpert fica meio louco e tenho q fechar no CTRL+ALT+DEL   Tenho certeza q o produto existe e se executo apenas o sub-select ele me retorna o COD_PROD = 1; Estou usando o FB 2.0.5;   Agradeço a ajuda dos colegas.   Marcello.
Marcello Cainelli

Marcello Cainelli

Responder

Posts

26/03/2010

Emerson Nascimento

aparentemente o erro se dá por conta de a sub-select retornar mais de um registro naquela condição.
então, tente:

UPDATE ESTOQUEFILIAL SET
   QUANTIDADE = (QUANTIDADE + 59)
WHERE
   COD_FILIAL = 1
   AND COD_PROD IN (SELECT COD_PROD FROM PRODUTOS WHERE COD_BARRA = '7894321711263')


Responder

Gostei + 0

26/03/2010

Marcello Cainelli

 Perfeito Emerson.   Um detalhe é q no Firebird 1.5 funcionava normalmente. Mas resolveu o problema.   Muito obrigado.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar