No, it supported multiple active statements since Groton Database Systems time. 
 And before that, Rdb/ELN.

Why do people make up "facts" to bolster losing arguments?




On Jul 24, 2014, at 5:30 PM, "Vlad Khorsun" <[email protected]> wrote:

>> On 24-7-2014 19:27, Vlad Khorsun wrote:
>>>> As far as I understand it, you can't have an IResultSet unless the
>>>> result set is open, so setting the cursor name on an IResultSet is not
>>>> very logical.
>>> 
>>>     What about more than one simultaneously active result set produced by 
>>> the same statement ?
>> 
>> As far as I know Firebird still doesn't support multiple result sets,
> 
>    You are wrong, sorry.
> 
>> and most implementations I know with multiple result sets either require 
>> or allow only one result set open at a time (and if they allow multiple 
>> result sets open, that is usually achieved by fully reading and 
>> detaching previous result sets).
> 
>    You are wrong again.
> 
> 1. Firebird supports multiply active result sets within same connection since 
> Interbase time
> and this is one of its basic features. Note, it is implemented at the engine 
> level and does not
> use any kind of "full fetch and close" technique.
> 
> 2. Statement (request) and cursor (resultset) is a different entities for the 
> engine and there is 
> no such restriction as one active cursor per statement. I.e. engine able to 
> produce as many 
> open cursors (by the same statement) as required. You could see it when 
> recursive procedure 
> is executed, for example. (I speak here about JrdStatement and jrd_req 
> classes, btw)
> 
> 3. I was a bit wrong in that that this feature is not exposed at DSQL level, 
> it could be used by 
> applications only using old BLR API (isc_start_request, isc_start_and_send)
> 
> 4. What you speak about (as i understand) is ability to return few resultsets 
> (of probably
> different formats) by the single execution of some statement. This feature 
> also exists in old 
> BLR API and not implemented by DSQL.
> 
> 
>    So, currently we really have no way to call IStatement::openCursor while 
> previous resultset 
> is alive, but technically it is very possible and we should not create 
> artificial problems for it 
> even if "holy standard" have no such feature. IMHO, of course.
> 
> 
> Regards,
> Vlad
> 
> ------------------------------------------------------------------------------
> Want fast and easy access to all the code in your enterprise? Index and
> search up to 200,000 lines of code with a free copy of Black Duck
> Code Sight - the same software that powers the world's largest code
> search on Ohloh, the Black Duck Open Hub! Try it now.
> http://p.sf.net/sfu/bds
> Firebird-Devel mailing list, web interface at 
> https://lists.sourceforge.net/lists/listinfo/firebird-devel

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to