--- "D. Richard Hipp" <[EMAIL PROTECTED]> wrote:
> On Dec 7, 2007, at 11:47 PM, Joe Wilson wrote:
> >
> > I believe it makes compound query behavior more compatible with other
> > popular databases. It is mostly backwards compatible with the previous
> > syntax and only 2 tests performed by "make test" had to be altered.
> 
> Compatibility with other databases is good.  But backwards compatibility
> with the thousands and thousands of existing SQLite applications is more
> important.  The current behavior of SQLite regarding the column names
> in compound SELECTs may be boneheaded and broken.  But it does at
> least have the virtue of being backwards compatible with all prior  
> releases
> of SQLite.  So a project can update the version of SQLite they are using
> to the latest code out of CVS and be reasonable confident that it  
> will still
> work.
> 
> If I put in this patch, that confidence is diminished somewhat.
> 
> Hence I am moving very slowly and cautiously here.

So few lines of code are changed by the patch that one could easily 
add a new PRAGMA to have the old compound SELECT behavior to be the 
default. If a database is explicitly created or altered with the new 
PRAGMA setting, it could have the new behavior, i.e.:

  PRAGMA sqlite_dialect = 2;

But if it is decided that a PRAGMA is the way to go to maintain backwards
compatibility, I think further changes to the compound column name 
resolution should go in. Such as only resolving ORDER BY columns against 
the leftmost SELECT, which would pave the way for complete expression 
support in compound SELECT ORDER BY. Other changes to the SQL syntax that 
you might have been saving could be bundled up with such a PRAGMA as well.




      
____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 


-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to