Fórum Retornar Valores em uma Store Procedure #42326

12/02/2004

0

Olá amigos,

Preciso fazer uma StoreProcedure que leia os dados de uma tabela, retorne esses dados e ainda faça um update nos dados retornados.

Exemplo:

/* BUSCA AS MENSAGENS NÃO LIDAS */
FOR SELECT C.CH_MSG FROM CHAT C
WHERE (C.CH_LIDA = ´N´)
INTO :rMSG DO BEGIN
SUSPEND;
END

/* SETA AS MENSAGENS COMO LIDA
UPDATE CHAT SET CH_LIDA = ´S´ WHERE (CH_LIDA = ´N´);

O problema é o seguinte, qdo mando dar o UPDATE ele não retorna nada, qdo não dou o UPDATE funciona certinho.

Eu sei que estou dando um UPDATE no campo que faço o WHERE, mas achei que uma vez dado o suspend o retorno do valor estava garantido.

Existe alguma forma de se fazer isso ???

Obrigado e sucesso a todos.


Renatobraun

Renatobraun

Responder

Posts

14/02/2004

Afarias

estranho... fiz até uns testes e funciona legal...



  FOR SELECT CH_MSG FROM CHAT WHERE (CH_LIDA = ´N´) 
  INTO :rMSG DO SUSPEND; 

  UPDATE CHAT SET CH_LIDA = ´S´ WHERE (CH_LIDA = ´N´); 





T+[/code]


Responder

Gostei + 0

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

Aceitar