DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Fórum DevMedia


Autor
Mensagem
MARCELLO CAINELLI
 


País: Brasil
Estado: SP
Cidade: Promissão
Mensagens: 12
 Postado em: 26/3/2010 02:07:21 PM
 
Caro colegas,
 
Alguém pode me ajudar a descobrir qual o problema com este comando ?
 
[CODE]
UPDATE ESTOQUEFILIAL SET QUANTIDADE = (QUANTIDADE + 59)
WHERE COD_FILIAL = 1
AND COD_PROD = (SELECT COD_PROD FROM PRODUTOS WHERE COD_BARRA = '7894321711263')
[/CODE]
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.
Emerson
 

 


País: Brasil
Estado: SP
Cidade: São Paulo
Mensagens: 938
 Postado em: 26/3/2010 02:27:54 PM
 
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')



MARCELLO CAINELLI
 


País: Brasil
Estado: SP
Cidade: Promissão
Mensagens: 12
 Postado em: 26/3/2010 02:46:23 PM
 
Thumbs Up Perfeito Emerson.
 
Um detalhe é q no Firebird 1.5 funcionava normalmente.
Mas resolveu o problema.
 
Muito obrigado.
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03