On 18-1-2013 16:08, laurentricci wrote: > Hi, > > I have faced a weird behaviour in Firebird 2.5.0. > > When executing the following (execute is in lowercase) , the block is > returning the > expected 3 rows: [1,2,3] > > execute block > returns(val INTEGER) > as > begin > val=1;SUSPEND; > val=2;SUSPEND; > val=3;SUSPEND; > end > > When executing the following (execute is in uppercase), the block is > returning a single > row only: [1], SUSPEND seems to act as an exit statement. > > EXECUTE block > returns(val INTEGER) > as > begin > val=1;SUSPEND; > val=2;SUSPEND; > val=3;SUSPEND; > end > > Could you please help me to fix this problem ?
Just tested it on Firebird 2.5.2 with Flamerobin and both work exactly the same. I don't think this was broken in 2.5.0, so the problem is most likely in the way you are executing. How are you executing this? Maybe that tool has an internal parser that is case-sensitive and does something different when it reads EXECUTE vs execute. Mark -- Mark Rotteveel