On Min, 2010-05-30 at 07:57 -0400, Andrew Dunstan wrote:
> > Yes that i know, expanding '*' is done in analyzer part. I am try to do
> > is, move the expanding process to "before" raw_parser that produce by
> > gram.y is processed by analyzer. Like this :
> >
> > sql query -> gram.y -> raw_parse_tree -> (expand the '*') -> analyze
> >
> > In this way analyzer part only receiving the expanded '*' parse tree
> > they wont expand the '*' again. I am aksing this because i didnt know
> > how to (analyzer) scan database so it can return list of attribut from
> > table. I have read the source code, and try manualy to replicate the
> > process (from what i got is the RTE function) with no result.
> >
> >
>
> Ok, but why? What are you trying to achieve?
>
>
I try to implement parser some modified SQL, let's say SQL in my native
language. So far i have make new gram.y structure that worked in my
case. I have manualy form some raw parser tree, and it work.
My problem is in my modified SQL spesification the "from clause" and
"where clause (at part join key relation)" was eliminated for farious
reason. So my modified SQL rely on "scanning" the whole database to find
all table and its attribut then projected the result as defined in
"select clause". But since i dont know how to scan the whole database to
get relation name and attribut name, i cant implement it.
By the way this is for my personal interest, so if you cant help that's
ok. But if you can help, i realy realy appreciated it.
Thank You.
--
Mohammad Heykal Abdillah <heykal.abdillah@gmail.com>