Re: Oracle grammar ambiguities and conflicts

"David R Tribble" <david@tribble.com>
17 Jan 2006 21:42:02 -0500

          From comp.compilers

Related articles
[4 earlier articles]
Re: Oracle grammar ambiguities and conflicts cfc@shell01.TheWorld.com (Chris F Clark) (2006-01-12)
Re: Oracle grammar ambiguities and conflicts DrDiettrich@compuserve.de (Hans-Peter Diettrich) (2006-01-12)
Re: Oracle grammar ambiguities and conflicts drikosv@otenet.gr (Evangelos Drikos) (2006-01-12)
Oracle grammar ambiguities and conflicts mark.thiehatten@bibit.com (Mark Thiehatten) (2006-01-12)
Re: Oracle grammar ambiguities and conflicts cfc@shell01.TheWorld.com (Chris F Clark) (2006-01-17)
Re: Oracle grammar ambiguities and conflicts mattblackmon@hotmail.com (Matt Blackmon) (2006-01-17)
Re: Oracle grammar ambiguities and conflicts david@tribble.com (David R Tribble) (2006-01-17)
Re: Oracle grammar ambiguities and conflicts parsersinc@earthlink.net (SLK Parsers) (2006-01-19)
Re: Oracle grammar ambiguities and conflicts parsersinc@earthlink.net (SLK Parsers) (2006-01-19)
Re: Oracle grammar ambiguities and conflicts parsersinc@earthlink.net (SLK Parsers) (2006-01-20)
| List of all articles for this month |

From: "David R Tribble" <david@tribble.com>
Newsgroups: comp.compilers
Date: 17 Jan 2006 21:42:02 -0500
Organization: Compilers Central
References: 01-07-11806-01-029
Keywords: SQL, parse

John Fairhall wrote:
>> I am attempting to write a parser for Oracle 7.3.4 SQL/PLSQL using
>> Visual Parse++ 4.0. I have run into a problem where non-reserved
>> keywords must be included as identifiers, causing millions of conflicts
>> in the grammar. Does anyone have experience with either using VP++
>> or with writing grammars for SQL?
>


matt blackmon wrote:
> Lastly, would a LL grammar be more befitting this problem than a LR?


Don't know if this will help, but I wrote a top-down recursive-descent
parser in Java for SQL-like queries, at:
    http://david.tribble.com/src/java/tribble/parse/sql/QueryParser.java
which is part of my 'tribble.parse.sql' package at:
    http://david.tribble.com/src/java


The parse_operand() and parse_name_expr() methods treat a
keyword as an error when an operand (identifier or literal) is
expected, but they can be modified fairly easily (although you
may give up some syntax checking if you do this).


(My code is open source.)


-drt


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.