org.teiid.query.parser
Class SQLParser

java.lang.Object
  extended by org.teiid.query.parser.SQLParserUtil
      extended by org.teiid.query.parser.SQLParser
All Implemented Interfaces:
SQLParserConstants

public class SQLParser
extends SQLParserUtil
implements SQLParserConstants

The SQLParser is a JavaCC-generated parser that reads a SQL string and produces a Query object. The SQLParser.java file is generated by JavaCC from the SQLParser.jj file. WARNING: DO NOT MODIFY the SQLParser.java file as it will be regenerated from the .jj file and your changes will be lost!


Field Summary
 Token jj_nt
           
 boolean lookingAhead
           
 Token token
           
 SQLParserTokenManager token_source
           
 
Fields inherited from interface org.teiid.query.parser.SQLParserConstants
ADD, ALL, ALL_IN_GROUP, ALLOCATE, ALTER, AND, ANY, ARE, ARRAY, AS, ASC, ASENSITIVE, ASYMETRIC, ATOMIC, AUTORIZATION, BEGIN, BETWEEN, BIGDECIMAL, BIGINT, BIGINTEGER, BINARY, BLOB, BOOLEAN, BOOLEANTYPE, BOTH, BREAK, BY, BYTE, CALL, CALLED, CASCADED, CASE, CAST, CHAR, CHARACTER, CHECK, CLOB, CLOSE, COLLATE, COLUMN, COMMA, COMMIT, CONCAT_OP, CONNECT, CONSTRAINT, CONTINUE, CONVERT, CORRESPONDING, CREATE, CRITERIA, CROSS, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, CURSOR, CYCLE, DATALINK, DATE, DATETYPE, DAY, DEALLOCATE, DEC, DECIMAL, DECLARE, DEFAULT, DEFAULT_KEYWORD, DELETE, DEREF, DESC, DESCRIBE, DETERMINISTIC, DIGIT, DISCONNECT, DISTINCT, DLNEWCOPY, DLPREVIOUSCOPY, DLURLCOMPLETE, DLURLCOMPLETEONLY, DLURLCOMPLETEWRITE, DLURLPATH, DLURLPATHONLY, DLURLPATHWRITE, DLURLSCHEME, DLURLSERVER, DLVALUE, DOLLAR, DOUBLE, DROP, DYNAMIC, EACH, ELEMENT, ELSE, END, EOF, EQ, ERROR, ESCAPE, EXCEPT, EXEC, EXECUTE, EXISTS, EXTERNAL, FALSE, FETCH, FILTER, FLOAT, FLOATVAL, FOR, FORIEGN, FREE, FROM, FULL, FUNCTION, GE, GET, GLOBAL, GRANT, GROUP, GT, HAS, HAVING, HOLD, HOUR, ID, ID_PART, IDENTITY, IF, IMMEDIATE, IMPORT, IN, IN_MULTI_LINE_COMMENT, INDICATOR, INNER, INOUT, INPUT, INSENSITIVE, INSERT, INT, INTEGER, INTEGERVAL, INTERSECT, INTERVAL, INTO, IS, ISOLATION, JOIN, LANGUAGE, LARGE, LATERAL, LBRACE, LE, LEADING, LEFT, LETTER, LIKE, LIMIT, LOCAL, LOCALTIME, LOCALTIMESTAMP, LONG, LOOP, LPAREN, LT, MAKEDEP, MAKENOTDEP, MATCH, MEMBER, MERGE, METHOD, MINUS, MINUTE, MODIFIES, MODULE, MONTH, MULTI_LINE_COMMENT, MULTISET, NATIONAL, NATURAL, NCHAR, NCLOB, NE, NE2, NEW, NO, NOCACHE, NONE, NOT, NULL, NUMERIC, OBJECT, OF, OLD, ON, ONLY, OPEN, OPTION, OR, ORDER, OUTER, OUTPUT, OVER, OVERLAPS, PARAMETER, PARTITION, PERIOD, PLUS, PRECISION, PREPARE, PRIMARY, PROCEDURE, QMARK, QUOTED_ID, RANGE, RBRACE, READS, REAL, RECURSIVE, REFERENCES, REFERENCING, RELEASE, RETURN, RETURNS, REVOKE, RIGHT, ROLLBACK, ROLLUP, ROW, ROWS, RPAREN, SAVEPOINT, SCROLL, SEARCH, SECOND, SELECT, SEMICOLON, SENSITIVE, SESSION_USER, SET, SHORT, SIMILAR, SLASH, SMALLINT, SOME, SPECIFIC, SPECIFICTYPE, SQL, SQLEXCEPTION, SQLSTATE, SQLWARNING, STAR, START, STATIC, STRING, STRINGVAL, SUBMULTILIST, SYMETRIC, SYSTEM, SYSTEM_USER, TABLE, TEMPORARY, THEN, TIME, TIMESTAMP, TIMESTAMPTYPE, TIMETYPE, TIMEZONE_HOUR, TIMEZONE_MINUTE, TINYINT, TO, tokenImage, TRAILING, TRANSLATE, TRANSLATION, TREAT, TRIGGER, TRUE, UNION, UNIQUE, UNKNOWN, UPDATE, USER, USING, VALUE, VALUES, VARCHAR, VARYING, VIRTUAL, WHEN, WHENEVER, WHERE, WHILE, WINDOW, WITH, WITHIN, WITHOUT, XML, XMLAGG, XMLATTRIBUTES, XMLBINARY, XMLCAST, XMLCOMMENT, XMLCONCAT, XMLDOCUMENT, XMLELEMENT, XMLEXISTS, XMLFOREST, XMLITERATE, XMLNAMESPACES, XMLPARSE, XMLPI, XMLQUERY, XMLSERIALIZE, XMLTABLE, XMLTEXT, XMLVALIDATE, YEAR
 
Constructor Summary
SQLParser(java.io.InputStream stream)
           
SQLParser(java.io.InputStream stream, java.lang.String encoding)
           
SQLParser(java.io.Reader stream)
           
SQLParser(SQLParserTokenManager tm)
           
 
Method Summary
 AggregateSymbol aggregateSymbol(ParseInfo info)
           
 AllInGroupSymbol allInGroupSymbol()
           
 AssignmentStatement assignStatement(ParseInfo info)
          Parse assignment statement
 LanguageObject assignStatementOperand(ParseInfo info)
          Parse operand of assignment statement, which can be nested arbitrarily deeply in parentheses.
 BetweenCriteria betweenCrit(ParseInfo info, Expression expression)
          Parse an [NOT] BETWEEN criteria.
 Block block(ParseInfo info)
          Parse block
 Criteria booleanPrimary(ParseInfo info)
          Parse a boolean primary.
 BreakStatement breakStatement(ParseInfo info)
          Parse break statement
 StoredProcedure callableStatement(ParseInfo info)
           
 CaseExpression caseExpression(ParseInfo info)
          Parse a non-searched CASE expression.
 java.lang.Character charVal(ParseInfo info, java.lang.String type)
           
 java.util.List<ElementSymbol> columnList(boolean validate)
           
 Command command(ParseInfo info)
          Parse any of several command types - this is the main parser entry point.
 Expression commonValueExpression(ParseInfo info)
           
 CompareCriteria compareCrit(ParseInfo info, Expression expression)
          Parse a compare criteria.
 Criteria compoundCritAnd(ParseInfo info)
          Parse a compound logical AND criteria.
 Criteria compoundCritOr(ParseInfo info)
          Parse a compound logical OR criteria.
 ContinueStatement continueStatement(ParseInfo info)
          Parse break statement
 java.util.List createElementsWithTypes(ParseInfo info)
          Create elements with datatypes
 Command createTempTable(ParseInfo info)
          Parse create temp table command.
 CreateUpdateProcedureCommand createUpdateProcedure(ParseInfo info)
          Parse create update procedure command
 Criteria criteria(ParseInfo info)
          Parse a criteria.
 CriteriaSelector criteriaSelector()
          Parse criteria selector
 JoinPredicate crossJoin(ParseInfo info)
           
 Constant dataType()
           
 java.lang.String dataTypeString()
           
 DeclareStatement declareStatement(ParseInfo info)
          Parse declare statement
 Delete delete(ParseInfo info)
          Parse a DELETE command
 Statement delimitedStatement(ParseInfo info)
           
 DerivedColumn derivedColumn(ParseInfo info)
           
 void disable_tracing()
           
 Command dropTable(ParseInfo info)
          Parse drop table command.
 DynamicCommand dynamicCommand(ParseInfo info)
          Parse error statement
 void enable_tracing()
           
 RaiseErrorStatement errorStatement(ParseInfo info)
          Parse error statement
 StoredProcedure executeNamedParams(ParseInfo info, StoredProcedure storedProcedure)
          Parse an exec statement with named parameters
 StoredProcedure executeUnnamedParams(ParseInfo info, StoredProcedure storedProcedure, int parameterIndex)
          Parse an exec statement with unnamed parameters
 ExistsCriteria existsCriteria(ParseInfo info)
          Parse an exists criteria.
 Expression expression(ParseInfo info)
          Parse an expression - made up of literals and functions.
 From from(ParseInfo info)
          Parse a FROM.
 Expression function(ParseInfo info)
          Parse a function.
 ParseException generateParseException()
           
 Token getNextToken()
           
 Token getToken(int index)
           
 GroupBy groupBy(ParseInfo info)
          Parse a GROUP BY clause.
 SingleElementSymbol groupByItem(ParseInfo info)
          Parse a GROUP BY list item.
 HasCriteria hasCriteria()
          Parse has criteria
 Criteria having(ParseInfo info)
          Parse a HAVING clause.
 java.lang.String id()
           
 Constant idExpression()
           
 IfStatement ifStatement(ParseInfo info)
          Parse if statement
 Insert insert(ParseInfo info)
          Parse an INSERT command
 Constant intervalType()
          Parse an interval type name - used only in TIMESTAMPADD and TIMESTAMPDIFF functions.
 Into into(ParseInfo info)
           
 int intVal()
           
 IsNullCriteria isNullCrit(ParseInfo info, Expression expression)
          Parse an IS [NOT] NULL criteria.
 FromClause joinedTable(ParseInfo info)
           
 Limit limit(ParseInfo info)
          Parse an LIMIT clause.
 Constant literal()
          Parse a literal - strings must be wrapped in either '' or "".
 LoopStatement loopStatement(ParseInfo info)
          Parse loop statement
 MatchCriteria matchCrit(ParseInfo info, Expression expression)
          Parse a match criteria.
 XMLNamespaces.NamespaceItem namespaceItem(ParseInfo info)
           
 java.lang.String nonReserved(java.lang.String... expected)
           
 Criteria notCrit(ParseInfo info)
          Parse a logical NOT criteria.
 Token operator()
           
 Option option(ParseInfo info)
          Parse an OPTION clause.
 OrderBy orderby(ParseInfo info)
          Parse an ORDER BY clause.
 Expression plusExpression(ParseInfo info)
          Parse an expression - made up of literals and functions.
 java.lang.String plusOperator()
          Parse the add/subtract operators.
 JoinPredicate qualifiedJoin(ParseInfo info)
           
 Query query(ParseInfo info)
          Parse a SELECT query
 QueryCommand queryExpression(ParseInfo info)
          Currently just a place holder to keep consistency with the spec
 QueryCommand queryExpressionBody(ParseInfo info)
           
 QueryCommand queryPrimary(ParseInfo info)
           
 QueryString queryString(ParseInfo info)
           
 QueryCommand queryTerm(ParseInfo info)
           
 void ReInit(java.io.InputStream stream)
           
 void ReInit(java.io.InputStream stream, java.lang.String encoding)
           
 void ReInit(java.io.Reader stream)
           
 void ReInit(SQLParserTokenManager tm)
           
 java.util.List rowValues(ParseInfo info)
          Parse row values - this is a comma separated list of values.
 SearchedCaseExpression searchedCaseExpression(ParseInfo info)
          Parse a searched CASE expression.
 Select select(ParseInfo info)
          Parse a SELECT clause.
 SingleElementSymbol selectExpression(ParseInfo info)
           
 SelectSymbol selectSymbol(ParseInfo info)
           
 SetClauseList setClauseList(boolean shortName, ParseInfo info)
           
 AbstractSetCriteria setCrit(ParseInfo info, Expression expression)
          Parse a set criteria.
 SingleElementSymbol sortKey(ParseInfo info)
           
 OrderByItem sortSpecification(ParseInfo info)
           
 CommandStatement sqlStatement(ParseInfo info)
          Parse sql statement
 Statement statement(ParseInfo info)
          Parse statement
 StoredProcedure storedProcedure(ParseInfo info, StoredProcedure storedProcedure)
          * Parse stored query command
 Constant stringConstant()
           
 java.lang.String stringVal()
           
 QueryCommand subquery(ParseInfo info)
           
 SubqueryCompareCriteria subqueryCompareCriteria(ParseInfo info, Expression expression)
          Parse a subquery compare criteria.
 SubqueryFromClause subqueryFromClause(ParseInfo info)
          Parse a unary from clause, which is just a single group name and an optional alias.
 Column tableElement(ParseInfo info)
           
 FromClause tablePrimary(ParseInfo info)
           
 FromClause tableReference(ParseInfo info)
          Parse a join predicate clause, which occurs as an element in the FROM clause.
 AggregateSymbol textAgg(ParseInfo info)
           
 TextTable.TextColumn textColumn(ParseInfo info)
           
 TextTable textTable(ParseInfo info)
           
 Expression timesExpression(ParseInfo info)
          Parse an expression - made up of literals and functions.
 java.lang.String timesOperator()
          Parse the multiply/divide operator.
 TranslateCriteria translateCriteria(ParseInfo info)
           
 TriggerAction triggerAction(ParseInfo info)
           
 UnaryFromClause unaryFromClause(ParseInfo info)
          Parse a unary from clause, which is just a single group name and an optional alias.
 Update update(ParseInfo info)
          Parse an UPDATE command
 Command updateProcedure(ParseInfo info)
           
 Command userCommand(ParseInfo info)
           
 Expression valueExpressionPrimary(ParseInfo info)
          Parse a basic expression.
 Criteria where(ParseInfo info)
          Parse a WHERE clause.
 WhileStatement whileStatement(ParseInfo info)
          Parse while statement
 WithQueryCommand withListElement(ParseInfo info)
           
 AggregateSymbol xmlAgg(ParseInfo info)
           
 XMLAttributes xmlAttributes(ParseInfo info)
           
 XMLTable.XMLColumn xmlColumn(ParseInfo info)
           
 XMLElement xmlElement(ParseInfo info)
           
 XMLForest xmlForest(ParseInfo info)
           
 XMLNamespaces xmlNamespaces(ParseInfo info)
           
 XMLParse xmlParse(ParseInfo info)
           
 XMLQuery xmlQuery(ParseInfo info)
           
 XMLSerialize xmlSerialize(ParseInfo info)
           
 XMLTable xmlTable(ParseInfo info)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

token_source

public SQLParserTokenManager token_source

token

public Token token

jj_nt

public Token jj_nt

lookingAhead

public boolean lookingAhead
Constructor Detail

SQLParser

public SQLParser(java.io.InputStream stream)

SQLParser

public SQLParser(java.io.InputStream stream,
                 java.lang.String encoding)

SQLParser

public SQLParser(java.io.Reader stream)

SQLParser

public SQLParser(SQLParserTokenManager tm)
Method Detail

stringVal

public final java.lang.String stringVal()
                                 throws ParseException
Throws:
ParseException

id

public final java.lang.String id()
                          throws ParseException
Throws:
ParseException

command

public final Command command(ParseInfo info)
                      throws ParseException
Parse any of several command types - this is the main parser entry point.

Parameters:
info - instructions to parse the command
Returns:
Parsed command
Throws:
ParseException - if parsing failed

updateProcedure

public final Command updateProcedure(ParseInfo info)
                              throws ParseException
Throws:
ParseException

triggerAction

public final TriggerAction triggerAction(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

userCommand

public final Command userCommand(ParseInfo info)
                          throws ParseException
Throws:
ParseException

dropTable

public final Command dropTable(ParseInfo info)
                        throws ParseException
Parse drop table command.

Parameters:
info - instructions to parse the command
Returns:
Parsed command
Throws:
ParseException - if parsing failed

createTempTable

public final Command createTempTable(ParseInfo info)
                              throws ParseException
Parse create temp table command.

Parameters:
info - instructions to parse the command
Returns:
Parsed command
Throws:
ParseException - if parsing failed

tableElement

public final Column tableElement(ParseInfo info)
                          throws ParseException
Throws:
ParseException

errorStatement

public final RaiseErrorStatement errorStatement(ParseInfo info)
                                         throws ParseException
Parse error statement

Throws:
ParseException - if parsing failed

statement

public final Statement statement(ParseInfo info)
                          throws ParseException
Parse statement

Throws:
ParseException - if parsing failed

delimitedStatement

public final Statement delimitedStatement(ParseInfo info)
                                   throws ParseException
Throws:
ParseException

block

public final Block block(ParseInfo info)
                  throws ParseException
Parse block

Throws:
ParseException

breakStatement

public final BreakStatement breakStatement(ParseInfo info)
                                    throws ParseException
Parse break statement

Throws:
ParseException - if parsing failed

continueStatement

public final ContinueStatement continueStatement(ParseInfo info)
                                          throws ParseException
Parse break statement

Throws:
ParseException - if parsing failed

whileStatement

public final WhileStatement whileStatement(ParseInfo info)
                                    throws ParseException
Parse while statement

Throws:
ParseException - if parsing failed

loopStatement

public final LoopStatement loopStatement(ParseInfo info)
                                  throws ParseException
Parse loop statement

Throws:
ParseException - if parsing failed

ifStatement

public final IfStatement ifStatement(ParseInfo info)
                              throws ParseException
Parse if statement

Throws:
ParseException - if parsing failed

criteriaSelector

public final CriteriaSelector criteriaSelector()
                                        throws ParseException
Parse criteria selector

Throws:
ParseException - if parsing failed

hasCriteria

public final HasCriteria hasCriteria()
                              throws ParseException
Parse has criteria

Throws:
ParseException

declareStatement

public final DeclareStatement declareStatement(ParseInfo info)
                                        throws ParseException
Parse declare statement

Throws:
ParseException - if parsing failed

assignStatement

public final AssignmentStatement assignStatement(ParseInfo info)
                                          throws ParseException
Parse assignment statement

Throws:
ParseException - if parsing failed

assignStatementOperand

public final LanguageObject assignStatementOperand(ParseInfo info)
                                            throws ParseException
Parse operand of assignment statement, which can be nested arbitrarily deeply in parentheses.

Throws:
ParseException - if parsing failed

sqlStatement

public final CommandStatement sqlStatement(ParseInfo info)
                                    throws ParseException
Parse sql statement

Throws:
ParseException - if parsing failed

translateCriteria

public final TranslateCriteria translateCriteria(ParseInfo info)
                                          throws ParseException
Throws:
ParseException

createUpdateProcedure

public final CreateUpdateProcedureCommand createUpdateProcedure(ParseInfo info)
                                                         throws ParseException
Parse create update procedure command

Throws:
ParseException - if parsing failed

dynamicCommand

public final DynamicCommand dynamicCommand(ParseInfo info)
                                    throws ParseException
Parse error statement

Throws:
ParseException - if parsing failed

setClauseList

public final SetClauseList setClauseList(boolean shortName,
                                         ParseInfo info)
                                  throws ParseException
Throws:
ParseException

createElementsWithTypes

public final java.util.List createElementsWithTypes(ParseInfo info)
                                             throws ParseException
Create elements with datatypes

Throws:
ParseException - if parsing failed

callableStatement

public final StoredProcedure callableStatement(ParseInfo info)
                                        throws ParseException
Throws:
ParseException

storedProcedure

public final StoredProcedure storedProcedure(ParseInfo info,
                                             StoredProcedure storedProcedure)
                                      throws ParseException
* Parse stored query command

Throws:
ParseException - if parsing failed

executeUnnamedParams

public final StoredProcedure executeUnnamedParams(ParseInfo info,
                                                  StoredProcedure storedProcedure,
                                                  int parameterIndex)
                                           throws ParseException

Parse an exec statement with unnamed parameters

Throws:
ParseException - if parsing failed

executeNamedParams

public final StoredProcedure executeNamedParams(ParseInfo info,
                                                StoredProcedure storedProcedure)
                                         throws ParseException

Parse an exec statement with named parameters

Throws:
ParseException - if parsing failed

insert

public final Insert insert(ParseInfo info)
                    throws ParseException
Parse an INSERT command

Returns:
Parsed insert statement
Throws:
ParseException - if parsing failed

columnList

public final java.util.List<ElementSymbol> columnList(boolean validate)
                                               throws ParseException
Throws:
ParseException

rowValues

public final java.util.List rowValues(ParseInfo info)
                               throws ParseException
Parse row values - this is a comma separated list of values.

Returns:
List of values, never null
Throws:
ParseException - if parsing failed

update

public final Update update(ParseInfo info)
                    throws ParseException
Parse an UPDATE command

Returns:
Parsed update statement
Throws:
ParseException - if parsing failed

delete

public final Delete delete(ParseInfo info)
                    throws ParseException
Parse a DELETE command

Returns:
Parsed delete statement
Throws:
ParseException - if parsing failed

queryExpression

public final QueryCommand queryExpression(ParseInfo info)
                                   throws ParseException
Currently just a place holder to keep consistency with the spec

Throws:
ParseException

withListElement

public final WithQueryCommand withListElement(ParseInfo info)
                                       throws ParseException
Throws:
ParseException

queryExpressionBody

public final QueryCommand queryExpressionBody(ParseInfo info)
                                       throws ParseException
Throws:
ParseException

queryTerm

public final QueryCommand queryTerm(ParseInfo info)
                             throws ParseException
Throws:
ParseException

queryPrimary

public final QueryCommand queryPrimary(ParseInfo info)
                                throws ParseException
Throws:
ParseException

query

public final Query query(ParseInfo info)
                  throws ParseException
Parse a SELECT query

Returns:
Parsed query
Throws:
ParseException - if parsing failed

into

public final Into into(ParseInfo info)
                throws ParseException
Throws:
ParseException

select

public final Select select(ParseInfo info)
                    throws ParseException

Parse a SELECT clause. The select must handle elements, aliased elements (x AS y), group.*, and *. It also must handle an optional DISTINCT at the beginning of the select list. It also must handle a scalar subquery expression in parentheses.

Example: "SELECT group.element, group2.element2 AS x, group3.*".

Example: "SELECT *".

Example: "SELECT DISTINCT a, b, c".

Example: "SELECT a, (SELECT b FROM groupC)".

Example: "SELECT a, (SELECT b FROM groupC) as d".

Returns:
Parsed select
Throws:
ParseException - if parsing failed

selectSymbol

public final SelectSymbol selectSymbol(ParseInfo info)
                                throws ParseException
Throws:
ParseException

selectExpression

public final SingleElementSymbol selectExpression(ParseInfo info)
                                           throws ParseException
Throws:
ParseException

derivedColumn

public final DerivedColumn derivedColumn(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

allInGroupSymbol

public final AllInGroupSymbol allInGroupSymbol()
                                        throws ParseException
Throws:
ParseException

xmlAgg

public final AggregateSymbol xmlAgg(ParseInfo info)
                             throws ParseException
Throws:
ParseException

textAgg

public final AggregateSymbol textAgg(ParseInfo info)
                              throws ParseException
Throws:
ParseException

aggregateSymbol

public final AggregateSymbol aggregateSymbol(ParseInfo info)
                                      throws ParseException
Throws:
ParseException

from

public final From from(ParseInfo info)
                throws ParseException

Parse a FROM. The from must handle groups, aliased groups or joined groups. This also handles JDBC escape processinf syntax for outer joins.

Example: "FROM a, b".

Example: "FROM a AS x, b as Y".

Example: "FROM a right outer join b, c, d join e".

Parameters:
from - object which is to be updated with the details in the from clause.
Returns:
list containing criteria objects.
Throws:
ParseException - if parsing failed

tableReference

public final FromClause tableReference(ParseInfo info)
                                throws ParseException

Parse a join predicate clause, which occurs as an element in the FROM clause. The join predicate combines two from clauses with a join.

Returns:
Join predicate
Throws:
ParseException - if parsing failed

joinedTable

public final FromClause joinedTable(ParseInfo info)
                             throws ParseException
Throws:
ParseException

crossJoin

public final JoinPredicate crossJoin(ParseInfo info)
                              throws ParseException
Throws:
ParseException

qualifiedJoin

public final JoinPredicate qualifiedJoin(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

tablePrimary

public final FromClause tablePrimary(ParseInfo info)
                              throws ParseException
Throws:
ParseException

xmlSerialize

public final XMLSerialize xmlSerialize(ParseInfo info)
                                throws ParseException
Throws:
ParseException

nonReserved

public final java.lang.String nonReserved(java.lang.String... expected)
                                   throws ParseException
Throws:
ParseException

textTable

public final TextTable textTable(ParseInfo info)
                          throws ParseException
Throws:
ParseException

textColumn

public final TextTable.TextColumn textColumn(ParseInfo info)
                                      throws ParseException
Throws:
ParseException

xmlQuery

public final XMLQuery xmlQuery(ParseInfo info)
                        throws ParseException
Throws:
ParseException

xmlTable

public final XMLTable xmlTable(ParseInfo info)
                        throws ParseException
Throws:
ParseException

xmlColumn

public final XMLTable.XMLColumn xmlColumn(ParseInfo info)
                                   throws ParseException
Throws:
ParseException

intVal

public final int intVal()
                 throws ParseException
Throws:
ParseException

subqueryFromClause

public final SubqueryFromClause subqueryFromClause(ParseInfo info)
                                            throws ParseException
Parse a unary from clause, which is just a single group name and an optional alias.

Returns:
Unary from clause containing the group
Throws:
ParseException - if parsing failed

unaryFromClause

public final UnaryFromClause unaryFromClause(ParseInfo info)
                                      throws ParseException
Parse a unary from clause, which is just a single group name and an optional alias.

Returns:
Unary from clause containing the group
Throws:
ParseException - if parsing failed

where

public final Criteria where(ParseInfo info)
                     throws ParseException

Parse a WHERE clause. The where clause holds a criteria.

Returns:
Parsed where
Throws:
ParseException - if parsing failed

criteria

public final Criteria criteria(ParseInfo info)
                        throws ParseException

Parse a criteria. This will parse any criteria expression.

Returns:
Parsed criteria
Throws:
ParseException - if parsing failed

compoundCritOr

public final Criteria compoundCritOr(ParseInfo info)
                              throws ParseException

Parse a compound logical OR criteria.

Returns:
Parsed OR criteria
Throws:
ParseException - if parsing failed

compoundCritAnd

public final Criteria compoundCritAnd(ParseInfo info)
                               throws ParseException

Parse a compound logical AND criteria.

Returns:
Parsed AND criteria
Throws:
ParseException - if parsing failed

notCrit

public final Criteria notCrit(ParseInfo info)
                       throws ParseException

Parse a logical NOT criteria.

Returns:
Parsed NOT criteria
Throws:
ParseException - if parsing failed

booleanPrimary

public final Criteria booleanPrimary(ParseInfo info)
                              throws ParseException

Parse a boolean primary.

Returns:
criteria
Throws:
ParseException - if parsing failed

operator

public final Token operator()
                     throws ParseException
Throws:
ParseException

compareCrit

public final CompareCriteria compareCrit(ParseInfo info,
                                         Expression expression)
                                  throws ParseException

Parse a compare criteria.

Returns:
Parsed compare criteria
Throws:
ParseException - if parsing failed

subquery

public final QueryCommand subquery(ParseInfo info)
                            throws ParseException
Throws:
ParseException

subqueryCompareCriteria

public final SubqueryCompareCriteria subqueryCompareCriteria(ParseInfo info,
                                                             Expression expression)
                                                      throws ParseException

Parse a subquery compare criteria.

Returns:
Parsed subquery compare criteria
Throws:
ParseException - if parsing failed

matchCrit

public final MatchCriteria matchCrit(ParseInfo info,
                                     Expression expression)
                              throws ParseException

Parse a match criteria. Also parses JDBC escape syntax for match criteria.

Returns:
Parsed match criteria
Throws:
ParseException - if parsing failed

charVal

public final java.lang.Character charVal(ParseInfo info,
                                         java.lang.String type)
                                  throws ParseException
Throws:
ParseException

betweenCrit

public final BetweenCriteria betweenCrit(ParseInfo info,
                                         Expression expression)
                                  throws ParseException

Parse an [NOT] BETWEEN criteria.

Returns:
Parsed BETWEEN criteria
Throws:
ParseException - if parsing failed

isNullCrit

public final IsNullCriteria isNullCrit(ParseInfo info,
                                       Expression expression)
                                throws ParseException

Parse an IS [NOT] NULL criteria.

Returns:
Parsed IS NULL criteria
Throws:
ParseException - if parsing failed

setCrit

public final AbstractSetCriteria setCrit(ParseInfo info,
                                         Expression expression)
                                  throws ParseException

Parse a set criteria.

Returns:
Parsed set criteria
Throws:
ParseException - if parsing failed

existsCriteria

public final ExistsCriteria existsCriteria(ParseInfo info)
                                    throws ParseException

Parse an exists criteria.

Returns:
Parsed exists criteria
Throws:
ParseException - if parsing failed

groupBy

public final GroupBy groupBy(ParseInfo info)
                      throws ParseException

Parse a GROUP BY clause.

Returns:
Parsed group by
Throws:
ParseException - if parsing failed

groupByItem

public final SingleElementSymbol groupByItem(ParseInfo info)
                                      throws ParseException

Parse a GROUP BY list item.

Returns:
Parsed group by item
Throws:
ParseException - if parsing failed

having

public final Criteria having(ParseInfo info)
                      throws ParseException

Parse a HAVING clause.

Returns:
Parsed having
Throws:
ParseException - if parsing failed

orderby

public final OrderBy orderby(ParseInfo info)
                      throws ParseException

Parse an ORDER BY clause.

Returns:
Parsed ORDER BY
Throws:
ParseException - if parsing failed

sortSpecification

public final OrderByItem sortSpecification(ParseInfo info)
                                    throws ParseException
Throws:
ParseException

sortKey

public final SingleElementSymbol sortKey(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

limit

public final Limit limit(ParseInfo info)
                  throws ParseException

Parse an LIMIT clause.

Returns:
Parsed LIMIT
Throws:
ParseException - if parsing failed

option

public final Option option(ParseInfo info)
                    throws ParseException

Parse an OPTION clause.

Returns:
Parsed OPTION clause
Throws:
ParseException - if parsing failed

expression

public final Expression expression(ParseInfo info)
                            throws ParseException

Parse an expression - made up of literals and functions.

Returns:
Expression
Throws:
ParseException - if parsing failed

commonValueExpression

public final Expression commonValueExpression(ParseInfo info)
                                       throws ParseException
Throws:
ParseException

plusExpression

public final Expression plusExpression(ParseInfo info)
                                throws ParseException

Parse an expression - made up of literals and functions.

Returns:
Expression
Throws:
ParseException - if parsing failed

plusOperator

public final java.lang.String plusOperator()
                                    throws ParseException

Parse the add/subtract operators.

Returns:
"+" or "-"
Throws:
ParseException - if parsing failed

timesExpression

public final Expression timesExpression(ParseInfo info)
                                 throws ParseException

Parse an expression - made up of literals and functions.

Returns:
Expression
Throws:
ParseException - if parsing failed

timesOperator

public final java.lang.String timesOperator()
                                     throws ParseException

Parse the multiply/divide operator.

Returns:
"*" or "/"
Throws:
ParseException - if parsing failed

valueExpressionPrimary

public final Expression valueExpressionPrimary(ParseInfo info)
                                        throws ParseException

Parse a basic expression.

Returns:
Expression
Throws:
ParseException - if parsing failed

caseExpression

public final CaseExpression caseExpression(ParseInfo info)
                                    throws ParseException
Parse a non-searched CASE expression.

Returns:
CaseExpression
Throws:
ParseException - if parsing failed

searchedCaseExpression

public final SearchedCaseExpression searchedCaseExpression(ParseInfo info)
                                                    throws ParseException
Parse a searched CASE expression.

Returns:
SearchedCaseExpression
Throws:
ParseException - if parsing failed

function

public final Expression function(ParseInfo info)
                          throws ParseException

Parse a function.

Returns:
Parsed function
Throws:
ParseException - if parsing failed

stringConstant

public final Constant stringConstant()
                              throws ParseException
Throws:
ParseException

xmlParse

public final XMLParse xmlParse(ParseInfo info)
                        throws ParseException
Throws:
ParseException

queryString

public final QueryString queryString(ParseInfo info)
                              throws ParseException
Throws:
ParseException

xmlElement

public final XMLElement xmlElement(ParseInfo info)
                            throws ParseException
Throws:
ParseException

xmlAttributes

public final XMLAttributes xmlAttributes(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

xmlForest

public final XMLForest xmlForest(ParseInfo info)
                          throws ParseException
Throws:
ParseException

xmlNamespaces

public final XMLNamespaces xmlNamespaces(ParseInfo info)
                                  throws ParseException
Throws:
ParseException

namespaceItem

public final XMLNamespaces.NamespaceItem namespaceItem(ParseInfo info)
                                                throws ParseException
Throws:
ParseException

idExpression

public final Constant idExpression()
                            throws ParseException
Throws:
ParseException

dataTypeString

public final java.lang.String dataTypeString()
                                      throws ParseException
Throws:
ParseException

dataType

public final Constant dataType()
                        throws ParseException
Throws:
ParseException

intervalType

public final Constant intervalType()
                            throws ParseException
Parse an interval type name - used only in TIMESTAMPADD and TIMESTAMPDIFF functions.

Returns:
Interval type parsed into a constant string object
Throws:
ParseException - if parsing failed

literal

public final Constant literal()
                       throws ParseException

Parse a literal - strings must be wrapped in either '' or "". JDBC escape syntax is parsed for Date, Time and Timestamp value.

Returns:
Parsed literal
Throws:
ParseException - if parsing failed

ReInit

public void ReInit(java.io.InputStream stream)

ReInit

public void ReInit(java.io.InputStream stream,
                   java.lang.String encoding)

ReInit

public void ReInit(java.io.Reader stream)

ReInit

public void ReInit(SQLParserTokenManager tm)

getNextToken

public final Token getNextToken()

getToken

public final Token getToken(int index)

generateParseException

public ParseException generateParseException()

enable_tracing

public final void enable_tracing()

disable_tracing

public final void disable_tracing()


Copyright © 2011. All Rights Reserved.