Subject | Re: [firebird-support] intermediate messages from a query |
---|---|
Author | Helen Borrie |
Post date | 2003-09-12T08:36:04Z |
At 09:02 AM 12/09/2003 +0200, you wrote:
next line, work through to the end of the loop and then go through the loop
again. But it will keep looping like that until it is all done.
heLen
>Hi Helen, all,Well...yes...it will output that row then recommence /* whatever */ in the
>
> > >please look this code:
> > >
> > >create procedure test
> > >returns
> > > (cmessage varchar(20)
> > >as
> > >begin
> > > for select id_emp from tb_emp do
> > > begin
> > > cmessagge='employee ' || id_per || ' is being processed';
> > > suspend;
> > > /*some action*/
> > > end
> > >end
> > >
> > >only _at the end_ of the query I get the messages _all together_,
> > >what is completely unuseless to me.
> > >
> > >No way to get what I want ?
> >
> > Not this way. A stored procedure call is atomic. It can't interact with
> > the client during execution. What your procedure actually does is build
>an
> > output set. If the procedure completes without an exception, you get the
> > output set. If an exception occurs at any point, the procedure will exit
> > and return the exception -- and there will be no output.
>
>Shouldn't this procedure start returning before the complete procedure
>is finished because of the SUSPEND?
next line, work through to the end of the loop and then go through the loop
again. But it will keep looping like that until it is all done.
heLen