New SQL parser, mostly done (was: V4RB Bug in SQL-Statement?

Ruslan Zasukhin sunshine at public.kherson.ua
Sat Feb 1 21:15:36 CST 2003


on 2/1/03 7:18 PM, Claudius Sailer at Claudius at sailer-online.de wrote:

> Valentina ignores in the second SQL-Statement
> 
> AND ZK.AnfangsZeit>=01.01.2003
> AND ZK.AnfangsZeit<01.01.2004

Hi Guys,

And I want inform you about good news.

We here mostly done new SQL parser.
This was huge tasks that include few phases.

-- GRAMMAR of SQL for ANTL

    This is set of rules for lexer and parser.
    As I have told we use ANTLR, superior of old known YACC.

-- TREE GRAMMAR

    the first grammar transform stream of chars of SQL query,
    into stream of tokes that create Tree of parsing.

    The Tree Grammar now walk by that tree, and create
    our own C++ nodes of SQL Engine.

-- SQL Engine Nodes

    This includes several hundreds small C++ classes
    which do one action for each SQL command.
    
    This part include old our nodes that we use in BaseObject
    methods (operators, comparison, string, date, math functions).
    And we have add more new nodes to support rest SQL commands
    such CREAT/ALTER/DROP TABLE, INSERT, SUBSELECTS, TRANSACTIONs,..

So we have practically finish these 2 phases !!!  :-)

Of course exists yet few thousands of glitches ... Joking...
And now we move to 4th last phase -- implementation of action for new nodes.
In fact this is already not task of Parser but the task of SQL Engine.

-- 
Best regards,
Ruslan Zasukhin      [ I feel the need...the need for speed ]
-------------------------------------------------------------
e-mail: ruslan at paradigmasoft.com
web: http://www.paradigmasoft.com

To subscribe to the Valentina mail list go to:
http://listserv.macserve.net/mailman/listinfo/valentina
-------------------------------------------------------------



More information about the Valentina mailing list