Subject Re: [Firebird-Architect] Re: External Engines (and Plugins)
Author Alex Peshkov
On Wednesday 25 June 2008 12:55, Vlad Khorsun wrote:
> Alex Peshkov :
> > On Wednesday 25 June 2008 12:05, Vlad Khorsun wrote:
> >> This is not SQL-language interface. This is C++ interface. Any
> >> plugin\external engine will implement its own user-friendly wrapper on
> >> the top of this interface to use with target programming environment.
> >> And in this wrapper they may use any number for low index bound.
> >>
> >> I don't know on which SQL traditions you reffers above. Am i SQL newby
> >> ?
> >>
> >> :)
> >
> > GROUP BY 1,3,4
> > ALTER TABLE table ALTER COLUMN column_name POSITION integer
>
> How it is related to our C++ API ?

Common diagnostics. If you have problems in field 13, you will try to debug
Fields[13], but with 0-based Fields it must be Fields[12].

> >> Why should we ugly our own interface because of some suspicious
> >> traditions ??? I guess our own traditions must be closer for us
> >> (remember XSQLDA ? ;)
> >
> > Yes, I remember this wonderful :))) beast. If you want to say that XSQLDA
> > is ideal wonderful interface design, sorry - I disagree.
>
> This is what we have more then 20 years. This *is* tradition, like we it
> or not.

I've often myself was forgetting that it has non-SQL indexing, and tried to
work with wrong field...

> > And also I remember how had to rework diagnostics in ExecStatement to
> > make column numbers be 1-based.
>
> Why it (user-visible diagnostic for SQL layer) should correlate with C++
> API interface (not user-visible, not SQL layer) ? Again, this is different
> layers, don't mix it, please.

Due to common diagnostics (sorry for repetition).

> See also my answer to Lester.

I've seen.