org.h2.util

## Class ParserUtil

- java.lang.Object
- - org.h2.util.ParserUtil

    public class ParserUtil
    extends java.lang.Object

### Field Summary

Fields
`static int` `_ROWID_` The token "_ROWID_".
`static int` `ALL` The token "ALL".
`static int` `ARRAY` The token "ARRAY".
`static int` `CASE` The token "CASE".
`static int` `CHECK` The token "CHECK".
`static int` `CONSTRAINT` The token "CONSTRAINT".
`static int` `CROSS` The token "CROSS".
`static int` `CURRENT_CATALOG` The token "CURRENT_CATALOG".
`static int` `CURRENT_DATE` The token "CURRENT_DATE".
`static int` `CURRENT_SCHEMA` The token "CURRENT_SCHEMA".
`static int` `CURRENT_TIME` The token "CURRENT_TIME".
`static int` `CURRENT_TIMESTAMP` The token "CURRENT_TIMESTAMP".
`static int` `CURRENT_USER` The token "CURRENT_USER".
`static int` `DISTINCT` The token "DISTINCT".
`static int` `EXCEPT` The token "EXCEPT".
`static int` `EXISTS` The token "EXISTS".
`static int` `FALSE` The token "FALSE".
`static int` `FETCH` The token "FETCH".
`static int` `FOR` The token "FOR".
`static int` `FOREIGN` The token "FOREIGN".
`static int` `FROM` The token "FROM".
`static int` `FULL` The token "FULL".
`static int` `GROUP` The token "GROUP".
`static int` `HAVING` The token "HAVING".
`static int` `IDENTIFIER` An identifier (table name, column name,...).
`static int` `IF` The token "IF".
`static int` `INNER` The token "INNER".
`static int` `INTERSECT` The token "INTERSECT".
`static int` `INTERSECTS` The token "INTERSECTS".
`static int` `INTERVAL` The token "INTERVAL".
`static int` `IS` The token "IS".
`static int` `JOIN` The token "JOIN".
`static int` `KEYWORD` A keyword.
`static int` `LEFT` The token "LEFT".
`static int` `LIKE` The token "LIKE".
`static int` `LIMIT` The token "LIMIT".
`static int` `LOCALTIME` The token "LOCALTIME".
`static int` `LOCALTIMESTAMP` The token "LOCALTIMESTAMP".
`static int` `MINUS` The token "MINUS".
`static int` `NATURAL` The token "NATURAL".
`static int` `NOT` The token "NOT".
`static int` `NULL` The token "NULL".
`static int` `OFFSET` The token "OFFSET".
`static int` `ON` The token "ON".
`static int` `ORDER` The token "ORDER".
`static int` `PRIMARY` The token "PRIMARY".
`static int` `QUALIFY` The token "QUALIFY".
`static int` `RIGHT` The token "RIGHT".
`static int` `ROW` The token "ROW".
`static int` `ROWNUM` The token "ROWNUM".
`static int` `SELECT` The token "SELECT".
`static int` `TABLE` The token "TABLE".
`static int` `TRUE` The token "TRUE".
`static int` `UNION` The token "UNION".
`static int` `UNIQUE` The token "UNIQUE".
`static int` `UNKNOWN` The token "UNKNOWN".
`static int` `USING` The token "USING".
`static int` `VALUES` The token "VALUES".
`static int` `WHERE` The token "WHERE".
`static int` `WINDOW` The token "WINDOW".
`static int` `WITH` The token "WITH".

### Method Summary

Methods
`static int` `getSaveTokenType(java.lang.String s, boolean ignoreCase, int start, int end, boolean additionalKeywords)` Get the token type.
`static boolean` `isKeyword(java.lang.String s, boolean ignoreCase)` Checks if this string is a SQL keyword.
`static boolean` `isSimpleIdentifier(java.lang.String s, boolean databaseToUpper, boolean databaseToLower)` Is this a simple identifier (in the JDBC specification sense).

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### KEYWORD

    public static final int KEYWORD

A keyword.

See Also:
  Constant Field Values

#### IDENTIFIER

    public static final int IDENTIFIER

An identifier (table name, column name,...).

See Also:
  Constant Field Values

#### ALL

    public static final int ALL

The token "ALL".

See Also:
  Constant Field Values

#### ARRAY

    public static final int ARRAY

The token "ARRAY".

See Also:
  Constant Field Values

#### CASE

    public static final int CASE

The token "CASE".

See Also:
  Constant Field Values

#### CHECK

    public static final int CHECK

The token "CHECK".

See Also:
  Constant Field Values

#### CONSTRAINT

    public static final int CONSTRAINT

The token "CONSTRAINT".

See Also:
  Constant Field Values

#### CROSS

    public static final int CROSS

The token "CROSS".

See Also:
  Constant Field Values

#### CURRENT_CATALOG

    public static final int CURRENT_CATALOG

The token "CURRENT_CATALOG".

See Also:
  Constant Field Values

#### CURRENT_DATE

    public static final int CURRENT_DATE

The token "CURRENT_DATE".

See Also:
  Constant Field Values

#### CURRENT_SCHEMA

    public static final int CURRENT_SCHEMA

The token "CURRENT_SCHEMA".

See Also:
  Constant Field Values

#### CURRENT_TIME

    public static final int CURRENT_TIME

The token "CURRENT_TIME".

See Also:
  Constant Field Values

#### CURRENT_TIMESTAMP

    public static final int CURRENT_TIMESTAMP

The token "CURRENT_TIMESTAMP".

See Also:
  Constant Field Values

#### CURRENT_USER

    public static final int CURRENT_USER

The token "CURRENT_USER".

See Also:
  Constant Field Values

#### DISTINCT

    public static final int DISTINCT

The token "DISTINCT".

See Also:
  Constant Field Values

#### EXCEPT

    public static final int EXCEPT

The token "EXCEPT".

See Also:
  Constant Field Values

#### EXISTS

    public static final int EXISTS

The token "EXISTS".

See Also:
  Constant Field Values

#### FALSE

    public static final int FALSE

The token "FALSE".

See Also:
  Constant Field Values

#### FETCH

    public static final int FETCH

The token "FETCH".

See Also:
  Constant Field Values

#### FOR

    public static final int FOR

The token "FOR".

See Also:
  Constant Field Values

#### FOREIGN

    public static final int FOREIGN

The token "FOREIGN".

See Also:
  Constant Field Values

#### FROM

    public static final int FROM

The token "FROM".

See Also:
  Constant Field Values

#### FULL

    public static final int FULL

The token "FULL".

See Also:
  Constant Field Values

#### GROUP

    public static final int GROUP

The token "GROUP".

See Also:
  Constant Field Values

#### HAVING

    public static final int HAVING

The token "HAVING".

See Also:
  Constant Field Values

#### IF

    public static final int IF

The token "IF".

See Also:
  Constant Field Values

#### INNER

    public static final int INNER

The token "INNER".

See Also:
  Constant Field Values

#### INTERSECT

    public static final int INTERSECT

The token "INTERSECT".

See Also:
  Constant Field Values

#### INTERSECTS

    public static final int INTERSECTS

The token "INTERSECTS".

See Also:
  Constant Field Values

#### INTERVAL

    public static final int INTERVAL

The token "INTERVAL".

See Also:
  Constant Field Values

#### IS

    public static final int IS

The token "IS".

See Also:
  Constant Field Values

#### JOIN

    public static final int JOIN

The token "JOIN".

See Also:
  Constant Field Values

#### LEFT

    public static final int LEFT

The token "LEFT".

See Also:
  Constant Field Values

#### LIKE

    public static final int LIKE

The token "LIKE".

See Also:
  Constant Field Values

#### LIMIT

    public static final int LIMIT

The token "LIMIT".

See Also:
  Constant Field Values

#### LOCALTIME

    public static final int LOCALTIME

The token "LOCALTIME".

See Also:
  Constant Field Values

#### LOCALTIMESTAMP

    public static final int LOCALTIMESTAMP

The token "LOCALTIMESTAMP".

See Also:
  Constant Field Values

#### MINUS

    public static final int MINUS

The token "MINUS".

See Also:
  Constant Field Values

#### NATURAL

    public static final int NATURAL

The token "NATURAL".

See Also:
  Constant Field Values

#### NOT

    public static final int NOT

The token "NOT".

See Also:
  Constant Field Values

#### NULL

    public static final int NULL

The token "NULL".

See Also:
  Constant Field Values

#### OFFSET

    public static final int OFFSET

The token "OFFSET".

See Also:
  Constant Field Values

#### ON

    public static final int ON

The token "ON".

See Also:
  Constant Field Values

#### ORDER

    public static final int ORDER

The token "ORDER".

See Also:
  Constant Field Values

#### PRIMARY

    public static final int PRIMARY

The token "PRIMARY".

See Also:
  Constant Field Values

#### QUALIFY

    public static final int QUALIFY

The token "QUALIFY".

See Also:
  Constant Field Values

#### RIGHT

    public static final int RIGHT

The token "RIGHT".

See Also:
  Constant Field Values

#### ROW

    public static final int ROW

The token "ROW".

See Also:
  Constant Field Values

#### _ROWID_

    public static final int _ROWID_

The token "_ROWID_".

See Also:
  Constant Field Values

#### ROWNUM

    public static final int ROWNUM

The token "ROWNUM".

See Also:
  Constant Field Values

#### SELECT

    public static final int SELECT

The token "SELECT".

See Also:
  Constant Field Values

#### TABLE

    public static final int TABLE

The token "TABLE".

See Also:
  Constant Field Values

#### TRUE

    public static final int TRUE

The token "TRUE".

See Also:
  Constant Field Values

#### UNION

    public static final int UNION

The token "UNION".

See Also:
  Constant Field Values

#### UNIQUE

    public static final int UNIQUE

The token "UNIQUE".

See Also:
  Constant Field Values

#### UNKNOWN

    public static final int UNKNOWN

The token "UNKNOWN".

See Also:
  Constant Field Values

#### USING

    public static final int USING

The token "USING".

See Also:
  Constant Field Values

#### VALUES

    public static final int VALUES

The token "VALUES".

See Also:
  Constant Field Values

#### WHERE

    public static final int WHERE

The token "WHERE".

See Also:
  Constant Field Values

#### WINDOW

    public static final int WINDOW

The token "WINDOW".

See Also:
  Constant Field Values

#### WITH

    public static final int WITH

The token "WITH".

See Also:
  Constant Field Values

### Method Detail

#### isKeyword

    public static boolean isKeyword(java.lang.String s,
                    boolean ignoreCase)

Checks if this string is a SQL keyword.

Parameters:
  `s` - the token to check
  `ignoreCase` - true if case should be ignored, false if only upper case tokens are detected as keywords
Returns:
  true if it is a keyword

#### isSimpleIdentifier

    public static boolean isSimpleIdentifier(java.lang.String s,
                             boolean databaseToUpper,
                             boolean databaseToLower)

Is this a simple identifier (in the JDBC specification sense).

Parameters:
  `s` - identifier to check
  `databaseToUpper` - whether unquoted identifiers are converted to upper case
  `databaseToLower` - whether unquoted identifiers are converted to lower case
Returns:
  is specified identifier may be used without quotes
Throws:
  `java.lang.NullPointerException` - if s is `null`

#### getSaveTokenType

    public static int getSaveTokenType(java.lang.String s,
                       boolean ignoreCase,
                       int start,
                       int end,
                       boolean additionalKeywords)

Get the token type.

Parameters:
  `s` - the string with token
  `ignoreCase` - true if case should be ignored, false if only upper case tokens are detected as keywords
  `start` - start index of token
  `end` - index of token, exclusive; must be greater than start index
  `additionalKeywords` - whether TOP, INTERSECTS, and "current data / time" functions are keywords
Returns:
  the token type