blob: 3c0365e15f7fa8ea527e57cc286250e069fbd2a0 [file] [log] [blame]
/* Copyright (c) 2001-2010, The HSQL Development Group
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* Neither the name of the HSQL Development Group nor the names of its
* contributors may be used to endorse or promote products derived from this
* software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG,
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package org.hsqldb;
import org.hsqldb.lib.IntKeyHashMap;
import org.hsqldb.lib.IntValueHashMap;
import org.hsqldb.lib.OrderedIntHashSet;
/**
* Defines and enumerates reserved and non-reserved SQL keywords.<p>
*
* @author Nitin Chauhan (initial work)
* @author Fred Toussi (fredt@users dot sourceforge.net)
* @version 1.9.0
* @since 1.7.2
*/
public class Tokens {
//
// SQL 200n reserved words full set
static final String T_ABS = "ABS";
public static final String T_ALL = "ALL";
static final String T_ALLOCATE = "ALLOCATE";
public static final String T_ALTER = "ALTER";
static final String T_AND = "AND";
static final String T_ANY = "ANY";
static final String T_ARE = "ARE";
public static final String T_ARRAY = "ARRAY";
public static final String T_AS = "AS";
static final String T_ASENSITIVE = "ASENSITIVE";
static final String T_ASYMMETRIC = "ASYMMETRIC";
static final String T_AT = "AT";
static final String T_ATOMIC = "ATOMIC";
public static final String T_AUTHORIZATION = "AUTHORIZATION";
static final String T_AVG = "AVG";
static final String T_BEGIN = "BEGIN";
static final String T_BETWEEN = "BETWEEN";
public static final String T_BIGINT = "BIGINT";
public static final String T_BINARY = "BINARY";
static final String T_BIT_LENGTH = "BIT_LENGTH";
public static final String T_BLOB = "BLOB";
public static final String T_BOOLEAN = "BOOLEAN";
static final String T_BOTH = "BOTH";
static final String T_BY = "BY";
public static final String T_CALL = "CALL";
static final String T_CALLED = "CALLED";
static final String T_CARDINALITY = "CARDINALITY";
public static final String T_CASCADED = "CASCADED";
static final String T_CASE = "CASE";
static final String T_CAST = "CAST";
static final String T_CEIL = "CEIL";
static final String T_CEILING = "CEILING";
static final String T_CHAR = "CHAR";
static final String T_CHAR_LENGTH = "CHAR_LENGTH";
public static final String T_CHARACTER = "CHARACTER";
static final String T_CHARACTER_LENGTH = "CHARACTER_LENGTH";
public static final String T_CHECK = "CHECK";
public static final String T_CLOB = "CLOB";
static final String T_CLOSE = "CLOSE";
static final String T_COALESCE = "COALESCE";
static final String T_COLLATE = "COLLATE";
static final String T_COLLECT = "COLLECT";
static final String T_COLUMN = "COLUMN";
public static final String T_COMMIT = "COMMIT";
static final String T_CONDITION = "CONDIITON";
public static final String T_CONNECT = "CONNECT";
public static final String T_CONSTRAINT = "CONSTRAINT";
static final String T_CONVERT = "CONVERT";
static final String T_CORR = "CORR";
static final String T_CORRESPONDING = "CORRESPONDING";
static final String T_COUNT = "COUNT";
static final String T_COVAR_POP = "COVAR_POP";
static final String T_COVAR_SAMP = "COVAR_SAMP";
public static final String T_CREATE = "CREATE";
static final String T_CROSS = "CROSS";
static final String T_CUBE = "CUBE";
static final String T_CUME_DIST = "CUME_DIST";
static final String T_CURRENT = "CURRENT";
static final String T_CURRENT_CATALOG = "CURRENT_CATALOG";
static final String T_CURRENT_DATE = "CURRENT_DATE";
static final String T_CURRENT_DEFAULT_TRANSFORM_GROUP =
"CURRENT_DEFAULT_TRANSFORM_GROUP";
static final String T_CURRENT_PATH = "CURRENT_PATH";
static final String T_CURRENT_ROLE = "CURRENT_ROLE";
static final String T_CURRENT_SCHEMA = "CURRENT_SCHEMA";
static final String T_CURRENT_TIME = "CURRENT_TIME";
static final String T_CURRENT_TIMESTAMP = "CURRENT_TIMESTAMP";
static final String T_CURRENT_TRANSFORM_GROUP_FOR_TYPE =
"CURRENT_TRANSFORM_GROUP_FOR_TYPE";
static final String T_CURRENT_USER = "CURRENT_USER";
static final String T_CURSOR = "CURSOR";
static final String T_CYCLE = "CYCLE";
public static final String T_DATE = "DATE";
public static final String T_DAY = "DAY";
static final String T_DEALLOCATE = "DEALLOCATE";
static final String T_DEC = "DEC";
public static final String T_DECIMAL = "DECIMAL";
static final String T_DECLARE = "DECLARE";
public static final String T_DEFAULT = "DEFAULT";
public static final String T_DELETE = "DELETE";
static final String T_DENSE_RANK = "DENSE_RANK";
static final String T_DEREF = "DEREF";
static final String T_DESCRIBE = "DESCRIBE";
static final String T_DETERMINISTIC = "DETERMINISTIC";
static final String T_DISCONNECT = "DISCONNECT";
static final String T_DISTINCT = "DISTINCT";
public static final String T_DO = "DO";
public static final String T_DOUBLE = "DOUBLE";
static final String T_DROP = "DROP";
static final String T_DYNAMIC = "DYNAMIC";
static final String T_EACH = "EACH";
static final String T_ELEMENT = "ELEMENT";
static final String T_ELSE = "ELSE";
static final String T_ELSEIF = "ELSEIF";
static final String T_END = "END";
static final String T_END_EXEC = "END_EXEC";
static final String T_ESCAPE = "ESCAPE";
static final String T_EVERY = "EVERY";
static final String T_EXCEPT = "EXCEPT";
static final String T_EXEC = "EXEC";
public static final String T_EXECUTE = "EXECUTE";
static final String T_EXISTS = "EXISTS";
static final String T_EXP = "EXP";
static final String T_EXTERNAL = "EXTERNAL";
static final String T_EXTRACT = "EXTRACT";
public static final String T_FALSE = "FALSE";
static final String T_FETCH = "FETCH";
static final String T_FILTER = "FILTER";
static final String T_FIRST_VALUE = "FIRST_VALUE";
public static final String T_FLOAT = "FLOAT";
static final String T_FLOOR = "FLOOR";
static final String T_FOR = "FOR";
public static final String T_FOREIGN = "FOREIGN";
static final String T_FREE = "FREE";
static final String T_FROM = "FROM";
static final String T_FULL = "FULL";
public static final String T_FUNCTION = "FUNCTION";
static final String T_FUSION = "FUSION";
public static final String T_GET = "GET";
static final String T_GLOBAL = "GLOBAL";
public static final String T_GRANT = "GRANT";
static final String T_GROUP = "GROUP";
static final String T_GROUPING = "GROUPING";
static final String T_HANDLER = "HANDLER";
static final String T_HAVING = "HAVING";
static final String T_HOLD = "HOLD";
public static final String T_HOUR = "HOUR";
static final String T_IDENTITY = "IDENTITY";
static final String T_IF = "IF";
static final String T_IMPORT = "IMPORT";
static final String T_IN = "IN";
static final String T_INDICATOR = "INDICATOR";
static final String T_INNER = "INNER";
static final String T_INOUT = "INOUT";
static final String T_INSENSITIVE = "INSENSITIVE";
public static final String T_INSERT = "INSERT";
static final String T_INT = "INT";
public static final String T_INTEGER = "INTEGER";
static final String T_INTERSECT = "INTERSECT";
static final String T_INTERSECTION = "INTERSECTION";
public static final String T_INTERVAL = "INTERVAL";
static final String T_INTO = "INTO";
static final String T_ITERATE = "ITERATE";
static final String T_IS = "IS";
static final String T_JAR = "JAR"; // SQL/JRT
static final String T_JOIN = "JOIN";
static final String T_LAG = "LAG";
public static final String T_LANGUAGE = "LANGUAGE";
static final String T_LARGE = "LARGE";
static final String T_LAST_VALUE = "LAST_VALUE";
static final String T_LATERAL = "LATERAL";
static final String T_LEAD = "LEAD";
static final String T_LEADING = "LEADING";
static final String T_LEAVE = "LEAVE";
static final String T_LEFT = "LEFT";
static final String T_LIKE = "LIKE";
static final String T_LIKE_REGX = "LIKE_REGX";
static final String T_LN = "LN";
public static final String T_LOCAL = "LOCAL";
static final String T_LOCALTIME = "LOCALTIME";
static final String T_LOCALTIMESTAMP = "LOCALTIMESTAMP";
public static final String T_LOOP = "LOOP";
static final String T_LOWER = "LOWER";
static final String T_MATCH = "MATCH";
static final String T_MAX = "MAX";
static final String T_MAX_CARDINALITY = "MAX_CARDINALITY";
static final String T_MEMBER = "MEMBER";
static final String T_MERGE = "MERGE";
static final String T_METHOD = "METHOD";
static final String T_MIN = "MIN";
public static final String T_MINUTE = "MINUTE";
static final String T_MOD = "MOD";
static final String T_MODIFIES = "MODIFIES";
static final String T_MODULE = "MODULE";
public static final String T_MONTH = "MONTH";
public static final String T_MULTISET = "MULTISET";
static final String T_NATIONAL = "NATIONAL";
static final String T_NATURAL = "NATURAL";
static final String T_NCHAR = "NCHAR";
static final String T_NCLOB = "NCLOB";
static final String T_NEW = "NEW";
public static final String T_NO = "NO";
public static final String T_NONE = "NONE";
static final String T_NORMALIZE = "NORMALIZE";
static final String T_NOT = "NOT";
static final String T_NTH_VALUE = "NTH_VALUE";
static final String T_NTILE = "NTILE";
public static final String T_NULL = "NULL";
public static final String T_NULLIF = "NULLIF";
public static final String T_NUMERIC = "NUMERIC";
static final String T_OCCURRENCES_REGEX = "OCCURRENCES_REGEX";
static final String T_OCTET_LENGTH = "OCTET_LENGTH";
static final String T_OF = "OF";
static final String T_OFFSET = "OFFSET";
static final String T_OLD = "OLD";
public static final String T_ON = "ON";
public static final String T_ONLY = "ONLY";
static final String T_OPEN = "OPEN";
static final String T_OR = "OR";
static final String T_ORDER = "ORDER";
static final String T_OUT = "OUT";
static final String T_OUTER = "OUTER";
static final String T_OVER = "OVER";
static final String T_OVERLAPS = "OVERLAPS";
static final String T_OVERLAY = "OVERLAY";
static final String T_PARAMETER = "PARAMETER";
static final String T_PARTITION = "PARTITION";
static final String T_PERCENT_RANK = "PERCENT_RANK";
static final String T_PERCENTILE_CONT = "PERCENTILE_CONT";
static final String T_PERCENTILE_DISC = "PERCENTILE_DISC";
static final String T_POSITION = "POSITION";
static final String T_POSITION_REGEX = "POSITION_REGEX";
static final String T_POWER = "POWER";
static final String T_PRECISION = "PRECISION";
static final String T_PREPARE = "PREPARE";
static final String T_PRIMARY = "PRIMARY";
public static final String T_PROCEDURE = "PROCEDURE";
static final String T_RANGE = "RANGE";
static final String T_RANK = "RANK";
static final String T_READS = "READS";
public static final String T_REAL = "REAL";
static final String T_RECURSIVE = "RECURSIVE";
static final String T_REF = "REF";
public static final String T_REFERENCES = "REFERENCES";
static final String T_REFERENCING = "REFERENCING";
static final String T_REGR_AVGX = "REGR_AVGX";
static final String T_REGR_AVGY = "REGR_AVGY";
static final String T_REGR_COUNT = "REGR_COUNT";
static final String T_REGR_INTERCEPT = "REGR_INTERCEPT";
static final String T_REGR_R2 = "REGR_R2";
static final String T_REGR_SLOPE = "REGR_SLOPE";
static final String T_REGR_SXX = "REGR_SXX";
static final String T_REGR_SXY = "REGR_SXY";
static final String T_REGR_SYY = "REGR_SYY";
static final String T_RELEASE = "RELEASE";
static final String T_REPEAT = "REPEAT";
static final String T_RESIGNAL = "RESIGNAL";
public static final String T_RESULT = "RESULT";
static final String T_RETURN = "RETURN";
static final String T_RETURNS = "RETURNS";
static final String T_REVOKE = "REVOKE";
static final String T_RIGHT = "RIGHT";
static final String T_ROLLBACK = "ROLLBACK";
static final String T_ROLLUP = "ROLLUP";
public static final String T_ROW = "ROW";
static final String T_ROW_NUMBER = "ROW_NUMBER";
public static final String T_ROWS = "ROWS";
static final String T_SAVEPOINT = "SAVEPOINT";
static final String T_SCOPE = "SCOPE";
static final String T_SCROLL = "SCROLL";
static final String T_SEARCH = "SEARCH";
public static final String T_SECOND = "SECOND";
public static final String T_SELECT = "SELECT";
static final String T_SENSITIVE = "SENSITIVE";
static final String T_SESSION_USER = "SESSION_USER";
public static final String T_SET = "SET";
static final String T_SIGNAL = "SIGNAL";
static final String T_SIMILAR = "SIMILAR";
public static final String T_SMALLINT = "SMALLINT";
static final String T_SOME = "SOME";
public static final String T_SPECIFIC = "SPECIFIC";
static final String T_SPECIFICTYPE = "SPECIFICTYPE";
public static final String T_SQL = "SQL";
static final String T_SQLEXCEPTION = "SQLEXCEPTION";
static final String T_SQLSTATE = "SQLSTATE";
static final String T_SQLWARNING = "SQLWARNING";
static final String T_SQRT = "SQRT";
static final String T_START = "START";
static final String T_STATIC = "STATIC";
static final String T_STDDEV_POP = "STDDEV_POP";
static final String T_STDDEV_SAMP = "STDDEV_SAMP";
static final String T_SUBMULTISET = "SUBMULTISET";
static final String T_SUBSTRING = "SUBSTRING";
static final String T_SUBSTRING_REGEX = "SUBSTRING_REGEX";
static final String T_SUM = "SUM";
static final String T_SYMMETRIC = "SYMMETRIC";
static final String T_SYSTEM = "SYSTEM";
static final String T_SYSTEM_USER = "SYSTEM_USER";
public static final String T_TABLE = "TABLE";
static final String T_TABLESAMPLE = "TABLESAMPLE";
static final String T_THEN = "THEN";
public static final String T_TIME = "TIME";
public static final String T_TIMESTAMP = "TIMESTAMP";
public static final String T_TIMEZONE_HOUR = "TIMEZONE_HOUR";
public static final String T_TIMEZONE_MINUTE = "TIMEZONE_MINUTE";
public static final String T_TO = "TO";
static final String T_TRAILING = "TRAILING";
static final String T_TRANSLATE = "TRANSLATE";
static final String T_TRANSLATE_REGEX = "TRANSLATE_REGEX";
static final String T_TRANSLATION = "TRANSLATION";
static final String T_TREAT = "TREAT";
public static final String T_TRIGGER = "TRIGGER";
static final String T_TRIM = "TRIM";
static final String T_TRIM_ARRAY = "TRIM_ARRAY";
public static final String T_TRUE = "TRUE";
static final String T_TRUNCATE = "TRUNCATE";
static final String T_UESCAPE = "UESCAPE";
static final String T_UNION = "UNION";
public static final String T_UNIQUE = "UNIQUE";
public static final String T_UNKNOWN = "UNKNOWN";
static final String T_UNNEST = "UNNEST";
static final String T_UNTIL = "UNTIL";
public static final String T_UPDATE = "UPDATE";
static final String T_UPPER = "UPPER";
public static final String T_USER = "USER";
static final String T_USING = "USING";
static final String T_VALUE = "VALUE";
static final String T_VALUES = "VALUES";
static final String T_VAR_POP = "VAR_POP";
static final String T_VAR_SAMP = "VAR_SAMP";
public static final String T_VARBINARY = "VARBINARY";
public static final String T_VARCHAR = "VARCHAR";
static final String T_VARYING = "VARYING";
static final String T_WHEN = "WHEN";
static final String T_WHENEVER = "WHENEVER";
static final String T_WHERE = "WHERE";
public static final String T_WHILE = "WHILE";
static final String T_WIDTH_BUCKET = "WIDTH_BUCKET";
static final String T_WINDOW = "WINDOW";
public static final String T_WITH = "WITH";
static final String T_WITHIN = "WITHIN";
static final String T_WITHOUT = "WITHOUT";
public static final String T_YEAR = "YEAR";
// ops
static final String T_ASTERISK = "*";
public static final String T_COMMA = ",";
static final String T_CIRCUMFLEX = "^";
static final String T_CLOSEBRACKET = ")";
static final String T_COLON = ":";
static final String T_CONCAT = "||";
public static final String T_DIVIDE = "/";
static final String T_EQUALS = "=";
static final String T_GREATER = ">";
static final String T_GREATER_EQUALS = ">=";
public static final String T_LEFTBRACKET = "[";
static final String T_LESS = "<";
static final String T_LESS_EQUALS = "<=";
static final String T_PERCENT = "%";
static final String T_PLUS = "+";
static final String T_MINUS = "-";
static final String T_NOT_EQUALS = "<>";
static final String T_NOT_EQUALS_ALT = "!=";
static final String T_OPENBRACKET = "(";
static final String T_QUESTION = "?";
public static final String T_RIGHTBRACKET = "]";
static final String T_SEMICOLON = ";";
static final String T_DOUBLE_COLON = "::";
// SQL:200n non-reserved word list
static final String T_A = "A";
static final String T_ABSOLUTE = "ABSOLUTE";
static final String T_ACTION = "ACTION";
static final String T_ADA = "ADA";
static final String T_ADMIN = "ADMIN";
static final String T_AFTER = "AFTER";
static final String T_ALWAYS = "ALWAYS";
static final String T_ASC = "ASC";
static final String T_ASSERTION = "ASSERTION";
static final String T_ASSIGNMENT = "ASSIGNMENT";
static final String T_ATTRIBUTE = "ATTRIBUTE";
static final String T_ATTRIBUTES = "ATTRIBUTES";
static final String T_BEFORE = "BEFORE";
static final String T_BERNOULLI = "BERNOULLI";
static final String T_BREADTH = "BREADTH";
static final String T_C = "C";
static final String T_CASCADE = "CASCADE";
public static final String T_CATALOG = "CATALOG";
public static final String T_CATALOG_NAME = "CATALOG_NAME";
static final String T_CHAIN = "CHAIN";
static final String T_CHARACTER_SET_CATALOG = "CHARACTER_SET_CATALOG";
static final String T_CHARACTER_SET_NAME = "CHARACTER_SET_NAME";
static final String T_CHARACTER_SET_SCHEMA = "CHARACTER_SET_SCHEMA";
static final String T_CHARACTERISTICS = "CHARACTERISTICS";
static final String T_CHARACTERS = "CHARACTERS";
static final String T_CLASS_ORIGIN = "CLASS_ORIGIN";
static final String T_COBOL = "COBOL";
static final String T_COLLATION = "COLLATION";
static final String T_COLLATION_CATALOG = "COLLATION_CATALOG";
static final String T_COLLATION_NAME = "COLLATION_NAME";
static final String T_COLLATION_SCHEMA = "COLLATION_SCHEMA";
static final String T_COLUMN_NAME = "COLUMN_NAME";
static final String T_COMMAND_FUNCTION = "COMMAND_FUNCTION";
static final String T_COMMAND_FUNCTION_CODE = "COMMAND_FUNCTION_CODE";
public static final String T_COMMITTED = "COMMITTED";
static final String T_COMPARABLE = "COMPARABLE"; // SQL/JRT
static final String T_CONDITION_IDENTIFIER = "CONDIITON_IDENTIFIER";
static final String T_CONDITION_NUMBER = "CONDITION_NUMBER";
static final String T_CONNECTION_NAME = "CONNECTION_NAME";
static final String T_CONSTRAINT_CATALOG = "CONSTRAINT_CATALOG";
static final String T_CONSTRAINT_NAME = "CONSTRAINT_NAME";
static final String T_CONSTRAINT_SCHEMA = "CONSTRAINT_SCHEMA";
static final String T_CONSTRAINTS = "CONSTRAINTS";
static final String T_CONSTRUCTOR = "CONSTRUCTOR";
static final String T_CONTAINS = "CONTAINS";
static final String T_CONTINUE = "CONTINUE";
static final String T_CURRENT_COLLATION = "CURRENT_COLLATION";
static final String T_CURSOR_NAME = "CURSOR_NAME";
public static final String T_DATA = "DATA";
static final String T_DATETIME_INTERVAL_CODE = "DATETIME_INTERVAL_CODE";
static final String T_DATETIME_INTERVAL_PRECISION =
"DATETIME_INTERVAL_PRECISION";
public static final String T_DEFAULTS = "DEFAULTS";
static final String T_DEFERRABLE = "DEFERRABLE";
static final String T_DEFERRED = "DEFERRED";
static final String T_DEFINED = "DEFINED";
static final String T_DEFINER = "DEFINER";
static final String T_DEGREE = "DEGREE";
static final String T_DEPTH = "DEPTH";
static final String T_DERIVED = "DERIVED";
static final String T_DESC = "DESC";
static final String T_DESCRIPTOR = "DESCRIPTOR";
static final String T_DIAGNOSTICS = "DIAGNOSTICS";
static final String T_DISPATCH = "DISPATCH";
public static final String T_DOMAIN = "DOMAIN";
static final String T_DYNAMIC_FUNCTION = "DYNAMIC_FUNCTION";
static final String T_DYNAMIC_FUNCTION_CODE = "DYNAMIC_FUNCTION_CODE";
static final String T_EXCEPTION = "EXCEPTION";
static final String T_EXCLUDE = "EXCLUDE";
static final String T_EXCLUDING = "EXCLUDING";
static final String T_EXIT = "EXIT";
static final String T_FINAL = "FINAL";
static final String T_FIRST = "FIRST";
static final String T_FOLLOWING = "FOLLOWING";
static final String T_FORTRAN = "FORTRAN";
static final String T_FOUND = "FOUND";
public static final String T_G_FACTOR = "G";
static final String T_GENERAL = "GENERAL";
static final String T_GO = "GO";
static final String T_GOTO = "GOTO";
static final String T_GRANTED = "GRANTED";
static final String T_HIERARCHY = "HIERARCHY";
static final String T_IMPLEMENTATION = "IMPLEMENTATION";
static final String T_INCLUDING = "INCLUDING";
public static final String T_INCREMENT = "INCREMENT";
static final String T_INITIALLY = "INITIALLY";
static final String T_INPUT = "INPUT";
static final String T_INSTANCE = "INSTANCE";
static final String T_INSTANTIABLE = "INSTANTIABLE";
static final String T_INSTEAD = "INSTEAD";
static final String T_INTERFACE = "INTERFACE"; // SQL/JRT
static final String T_INVOKER = "INVOKER";
public static final String T_ISOLATION = "ISOLATION";
public static final String T_JAVA = "JAVA"; // SQL/JRT
public static final String T_K_FACTOR = "K";
static final String T_KEY = "KEY";
static final String T_KEY_MEMBER = "KEY_MEMBER";
static final String T_KEY_TYPE = "KEY_TYPE";
static final String T_LAST = "LAST";
static final String T_LENGTH = "LENGTH";
public static final String T_LEVEL = "LEVEL";
public static final String T_LIBRARY = "LIBRARY";
static final String T_LOCATOR = "LOCATOR";
public static final String T_M_FACTOR = "M";
static final String T_MAP = "MAP";
static final String T_MATCHED = "MATCHED";
static final String T_MAXVALUE = "MAXVALUE";
static final String T_MESSAGE_LENGTH = "MESSAGE_LENGTH";
static final String T_MESSAGE_OCTET_LENGTH = "MESSAGE_OCTET_LENGTH";
static final String T_MESSAGE_TEXT = "MESSAGE_TEXT";
static final String T_MINVALUE = "MINVALUE";
static final String T_MORE = "MORE";
static final String T_MUMPS = "MUMPS";
public static final String T_NAME = "NAME";
public static final String T_NAMES = "NAMES";
static final String T_NESTING = "NESTING";
static final String T_NEXT = "NEXT";
static final String T_NORMALIZED = "NORMALIZED";
static final String T_NULLABLE = "NULLABLE";
public static final String T_NULLS = "NULLS";
static final String T_NUMBER = "NUMBER";
public static final String T_OBJECT = "OBJECT";
static final String T_OCTETS = "OCTETS";
static final String T_OPTION = "OPTION";
static final String T_OPTIONS = "OPTIONS";
static final String T_ORDERING = "ORDERING";
static final String T_ORDINALITY = "ORDINALITY";
static final String T_OTHERS = "OTHERS";
public static final String T_OVERRIDING = "OVERRIDING";
public static final String T_P_FACTOR = "P";
static final String T_PAD = "PAD";
static final String T_PARAMETER_MODE = "PARAMETER_MODE";
static final String T_PARAMETER_NAME = "PARAMETER_NAME";
static final String T_PARAMETER_ORDINAL_POSITION =
"PARAMETER_ORDINAL_POSITION";
static final String T_PARAMETER_SPECIFIC_CATALOG =
"PARAMETER_SPECIFIC_CATALOG";
static final String T_PARAMETER_SPEC_NAME = "PARAMETER_SPECIFIC_NAME";
static final String T_PARAMETER_SPEC_SCHEMA = "PARAMETER_SPECIFIC_SCHEMA";
static final String T_PARTIAL = "PARTIAL";
static final String T_PASCAL = "PASCAL";
public static final String T_PATH = "PATH";
static final String T_PLACING = "PLACING";
static final String T_PLI = "PLI";
static final String T_PRECEDING = "PRECEDING";
static final String T_PRESERVE = "PRESERVE";
static final String T_PRIOR = "PRIOR";
static final String T_PRIVILEGES = "PRIVILEGES";
public static final String T_PUBLIC = "PUBLIC";
public static final String T_READ = "READ";
static final String T_RELATIVE = "RELATIVE";
static final String T_REPEATABLE = "REPEATABLE";
static final String T_RESTART = "RESTART";
static final String T_RETURNED_CARDINALITY = "RETURNED_CARDINALITY";
static final String T_RETURNED_LENGTH = "RETURNED_LENGTH";
static final String T_RETURNED_OCTET_LENGTH = "RETURNED_OCTET_LENGTH";
static final String T_RETURNED_SQLSTATE = "RETURNED_SQLSTATE";
public static final String T_ROLE = "ROLE";
public static final String T_ROUTINE = "ROUTINE";
static final String T_ROUTINE_CATALOG = "ROUTINE_CATALOG";
static final String T_ROUTINE_NAME = "ROUTINE_NAME";
static final String T_ROUTINE_SCHEMA = "ROUTINE_SCHEMA";
static final String T_ROW_COUNT = "ROW_COUNT";
public static final String T_SCALE = "SCALE";
public static final String T_SCHEMA = "SCHEMA";
static final String T_SCHEMA_NAME = "SCHEMA_NAME";
static final String T_SCOPE_CATALOG = "SCOPE_CATALOG";
static final String T_SCOPE_NAME = "SCOPE_NAME";
static final String T_SCOPE_SCHEMA = "SCOPE_SCHEMA";
static final String T_SECTION = "SECTION";
static final String T_SECURITY = "SECURITY";
static final String T_SELF = "SELF";
public static final String T_SEQUENCE = "SEQUENCE";
public static final String T_SERIALIZABLE = "SERIALIZABLE";
public static final String T_SERVER = "SERVER";
static final String T_SERVER_NAME = "SERVER_NAME";
public static final String T_SESSION = "SESSION";
static final String T_SETS = "SETS";
static final String T_SIMPLE = "SIMPLE";
public static final String T_SIZE = "SIZE";
static final String T_SOURCE = "SOURCE";
static final String T_SPACE = "SPACE";
static final String T_SPECIFIC_NAME = "SPECIFIC_NAME";
static final String T_SQLDATA = "SQLDATA"; // SQL/JRT
static final String T_STACKED = "STACKED";
static final String T_STATE = "STATE";
static final String T_STATEMENT = "STATEMENT";
static final String T_STRUCTURE = "STRUCTURE";
static final String T_STYLE = "STYLE";
static final String T_SUBCLASS_ORIGIN = "SUBCLASS_ORIGIN";
public static final String T_T_FACTOR = "T";
static final String T_TABLE_NAME = "TABLE_NAME";
static final String T_TEMPORARY = "TEMPORARY";
static final String T_TIES = "TIES";
static final String T_TOP_LEVEL_COUNT = "TOP_LEVEL_COUNT";
public static final String T_TRANSACTION = "TRANSACTION";
static final String T_TRANSACT_COMMITTED = "TRANSACTIONS_COMMITTED";
static final String T_TRANSACTION_ROLLED_BACK = "TRANSACTIONS_ROLLED_BACK";
static final String T_TRANSACT_ACTIVE = "TRANSACTION_ACTIVE";
static final String T_TRANSFORM = "TRANSFORM";
static final String T_TRANSFORMS = "TRANSFORMS";
static final String T_TRIGGER_CATALOG = "TRIGGER_CATALOG";
static final String T_TRIGGER_NAME = "TRIGGER_NAME";
static final String T_TRIGGER_SCHEMA = "TRIGGER_SCHEMA";
public static final String T_TYPE = "TYPE";
static final String T_UNBOUNDED = "UNBOUNDED";
static final String T_UNCOMMITTED = "UNCOMMITTED";
static final String T_UNDER = "UNDER";
static final String T_UNDO = "UNDO";
static final String T_UNNAMED = "UNNAMED";
public static final String T_USAGE = "USAGE";
static final String T_USER_DEFINED_TYPE_CATALOG =
"USER_DEFINED_TYPE_CATALOG";
static final String T_USER_DEFINED_TYPE_CODE = "USER_DEFINED_TYPE_CODE";
static final String T_USER_DEFINED_TYPE_NAME = "USER_DEFINED_TYPE_NAME";
static final String T_USER_DEFINED_TYPE_SCHEMA =
"USER_DEFINED_TYPE_SCHEMA";
static final String T_VIEW = "VIEW";
static final String T_WORK = "WORK";
public static final String T_WRAPPER = "WRAPPER";
public static final String T_WRITE = "WRITE";
public static final String T_ZONE = "ZONE";
// other tokens
static final String T_ADD = "ADD";
static final String T_ALIAS = "ALIAS";
static final String T_AGGREGATE = "AGGREGATE";
static final String T_AUTOCOMMIT = "AUTOCOMMIT";
public static final String T_BACKUP = "BACKUP";
public static final String T_BIT = "BIT";
static final String T_BITLENGTH = "BITLENGTH";
public static final String T_CACHE = "CACHE";
static final String T_CACHED = "CACHED";
static final String T_CASEWHEN = "CASEWHEN";
static final String T_CHECKPOINT = "CHECKPOINT";
static final String T_CLASS = "CLASS";
static final String T_COMMENT = "COMMENT";
static final String T_COMPACT = "COMPACT";
public static final String T_COMPRESSED = "COMPRESSED";
public static final String T_CONTROL = "CONTROL";
static final String T_CURDATE = "CURDATE";
static final String T_CURTIME = "CURTIME";
public static final String T_DATABASE = "DATABASE";
public static final String T_DEFRAG = "DEFRAG";
public static final String T_DELAY = "DELAY";
static final String T_EXPLAIN = "EXPLAIN";
public static final String T_EVENT = "EVENT";
static final String T_FILE = "FILE";
public static final String T_FILES = "FILES";
static final String T_FOLD = "FOLD";
static final String T_GENERATED = "GENERATED";
static final String T_HEADER = "HEADER";
static final String T_IFNULL = "IFNULL";
static final String T_IGNORECASE = "IGNORECASE";
static final String T_IMMEDIATELY = "IMMEDIATELY";
public static final String T_INDEX = "INDEX";
public static final String T_INITIAL = "INITIAL";
public static final String T_INTEGRITY = "INTEGRITY";
static final String T_ISAUTOCOMMIT = "ISAUTOCOMMIT";
static final String T_ISREADONLYDATABASE = "ISREADONLYDATABASE";
static final String T_ISREADONLYDATABASEFILES = "ISREADONLYDATABASEFILES";
static final String T_ISREADONLYSESSION = "ISREADONLYSESSION";
static final String T_LIMIT = "LIMIT";
public static final String T_LOB = "LOB";
public static final String T_LOCK = "LOCK";
public static final String T_LOCKS = "LOCKS";
static final String T_MAXROWS = "MAXROWS";
public static final String T_MEMORY = "MEMORY";
public static final String T_MILLIS = "MILLIS";
static final String T_MINUS_EXCEPT = "MINUS";
public static final String T_MVCC = "MVCC";
public static final String T_MVLOCKS = "MVLOCKS";
public static final String T_NIO = "NIO";
static final String T_NOWAIT = "NOWAIT";
static final String T_NVL = "NVL";
static final String T_OCTETLENGTH = "OCTETLENGTH";
static final String T_OFF = "OFF";
public static final String T_OTHER = "OTHER";
public static final String T_PASSWORD = "PASSWORD";
static final String T_PLAN = "PLAN";
static final String T_PROPERTY = "PROPERTY";
static final String T_QUEUE = "QUEUE";
static final String T_READONLY = "READONLY";
static final String T_REFERENTIAL = "REFERENTIAL";
static final String T_RENAME = "RENAME";
static final String T_RESTRICT = "RESTRICT";
static final String T_SCRIPT = "SCRIPT";
static final String T_SCRIPTFORMAT = "SCRIPTFORMAT";
static final String T_BLOCKING = "BLOCKING";
static final String T_SHUTDOWN = "SHUTDOWN";
static final String T_SQL_TSI_DAY = "SQL_TSI_DAY";
static final String T_SQL_TSI_FRAC_SECOND = "SQL_TSI_FRAC_SECOND";
static final String T_SQL_TSI_HOUR = "SQL_TSI_HOUR";
static final String T_SQL_TSI_MINUTE = "SQL_TSI_MINUTE";
static final String T_SQL_TSI_MONTH = "SQL_TSI_MONTH";
static final String T_SQL_TSI_QUARTER = "SQL_TSI_QUARTER";
static final String T_SQL_TSI_SECOND = "SQL_TSI_SECOND";
static final String T_SQL_TSI_WEEK = "SQL_TSI_WEEK";
static final String T_SQL_TSI_YEAR = "SQL_TSI_YEAR";
static final String T_SQL_BIGINT = "SQL_BIGINT";
static final String T_SQL_BINARY = "SQL_BINARY";
static final String T_SQL_BIT = "SQL_BIT";
static final String T_SQL_BLOB = "SQL_BLOB";
static final String T_SQL_BOOLEAN = "SQL_BOOLEAN";
static final String T_SQL_CHAR = "SQL_CHAR";
static final String T_SQL_CLOB = "SQL_CLOB";
static final String T_SQL_DATE = "SQL_DATE";
static final String T_SQL_DECIMAL = "SQL_DECIMAL";
static final String T_SQL_DATALINK = "SQL_DATALINK";
static final String T_SQL_DOUBLE = "SQL_DOUBLE";
static final String T_SQL_FLOAT = "SQL_FLOAT";
static final String T_SQL_INTEGER = "SQL_INTEGER";
static final String T_SQL_LONGVARBINARY = "SQL_LONGVARBINARY";
static final String T_SQL_LONGNVARCHAR = "SQL_LONGNVARCHAR";
static final String T_SQL_LONGVARCHAR = "SQL_LONGVARCHAR";
static final String T_SQL_NCHAR = "SQL_NCHAR";
static final String T_SQL_NCLOB = "SQL_NCLOB";
static final String T_SQL_NUMERIC = "SQL_NUMERIC";
static final String T_SQL_NVARCHAR = "SQL_NVARCHAR";
static final String T_SQL_REAL = "SQL_REAL";
static final String T_SQL_ROWID = "SQL_ROWID";
static final String T_SQL_SQLXML = "SQL_SQLXML";
static final String T_SQL_SMALLINT = "SQL_SMALLINT";
static final String T_SQL_TIME = "SQL_TIME";
static final String T_SQL_TIMESTAMP = "SQL_TIMESTAMP";
static final String T_SQL_TINYINT = "SQL_TINYINT";
static final String T_SQL_VARBINARY = "SQL_VARBINARY";
static final String T_SQL_VARCHAR = "SQL_VARCHAR";
public static final String T_TEMP = "TEMP";
public static final String T_TEXT = "TEXT";
static final String T_TIMESTAMPADD = "TIMESTAMPADD";
static final String T_TIMESTAMPDIFF = "TIMESTAMPDIFF";
public static final String T_TINYINT = "TINYINT";
static final String T_TO_CHAR = "TO_CHAR";
static final String T_TODAY = "TODAY";
static final String T_TOP = "TOP";
public static final String T_VARCHAR_IGNORECASE = "VARCHAR_IGNORECASE";
static final String T_WRITE_DELAY = "WRITE_DELAY";
public static final String T_YES = "YES";
//
public static final String T_DAY_NAME = "DAY_NAME";
public static final String T_MONTH_NAME = "MONTH_NAME";
public static final String T_QUARTER = "QUARTER";
public static final String T_DAY_OF_WEEK = "DAY_OF_WEEK";
public static final String T_DAY_OF_MONTH = "DAY_OF_MONTH";
public static final String T_DAY_OF_YEAR = "DAY_OF_YEAR";
public static final String T_WEEK_OF_YEAR = "WEEK_OF_YEAR";
static final String T_DAYNAME = "DAYNAME";
static final String T_MONTHNAME = "MONTHNAME";
static final String T_DAYOFMONTH = "DAYOFMONTH";
static final String T_DAYOFWEEK = "DAYOFWEEK";
static final String T_DAYOFYEAR = "DAYOFYEAR";
static final String T_WEEK = "WEEK";
//
static final String T_ACOS = "ACOS";
static final String T_ASCII = "ASCII";
static final String T_ASIN = "ASIN";
static final String T_ATAN = "ATAN";
static final String T_ATAN2 = "ATAN2";
static final String T_BITAND = "BITAND";
static final String T_BITOR = "BITOR";
static final String T_BITXOR = "BITXOR";
static final String T_CONCAT_WORD = "CONCAT";
static final String T_COS = "COS";
static final String T_COT = "COT";
static final String T_CRYPT_KEY = "CRYPT_KEY";
static final String T_DATEADD = "DATEADD";
static final String T_DATEDIFF = "DATEDIFF";
static final String T_DECODE = "DECODE";
static final String T_DEGREES = "DEGREES";
static final String T_DIFFERENCE = "DIFFERENCE";
static final String T_DMOD = "DMOD";
public static final String T_GC = "GC";
static final String T_GREATEST = "GREATEST";
static final String T_HEXTORAW = "HEXTORAW";
static final String T_LCASE = "LCASE";
static final String T_LEAST = "LEAST";
static final String T_LOCATE = "LOCATE";
public static final String T_LOG = "LOG";
static final String T_LOG10 = "LOG10";
static final String T_LTRIM = "LTRIM";
static final String T_NOW = "NOW";
static final String T_PI = "PI";
static final String T_RADIANS = "RADIANS";
static final String T_RAND = "RAND";
static final String T_RAWTOHEX = "RAWTOHEX";
public static final String T_REGEXP_MATCHES = "REGEXP_MATCHES";
static final String T_REPLACE = "REPLACE";
static final String T_REVERSE = "REVERSE";
static final String T_ROUND = "ROUND";
static final String T_ROUNDMAGIC = "ROUNDMAGIC";
static final String T_RTRIM = "RTRIM";
public static final String T_SECONDS_MIDNIGHT = "SECONDS_SINCE_MIDNIGHT";
static final String T_SIGN = "SIGN";
static final String T_SIN = "SIN";
static final String T_SOUNDEX = "SOUNDEX";
static final String T_SUBSTR = "SUBSTR";
static final String T_SYSDATE = "SYSDATE";
static final String T_TAN = "TAN";
static final String T_UCASE = "UCASE";
//
static final String T_ISOLATION_LEVEL = "ISOLATION_LEVEL";
static final String T_SESSION_ISOLATION_LEVEL = "SESSION_ISOLATION_LEVEL";
static final String T_DATABASE_ISOLATION_LEVEL =
"DATABASE_ISOLATION_LEVEL";
static final String T_TRANSACTION_CONTROL = "TRANSACTION_CONTROL";
static final String T_TIMEZONE = "TIMEZONE";
static final String T_SESSION_TIMEZONE = "SESSION_TIMEZONE";
static final String T_DATABASE_TIMEZONE = "DATABASE_TIMEZONE";
static final String T_DATABASE_VERSION = "DATABASE_VERSION";
//
//SQL 200n Standard reserved keywords - full set
public static final int ABS = 1;
public static final int ALL = 2;
public static final int ALLOCATE = 3;
public static final int ALTER = 4;
public static final int AND = 5;
public static final int ANY = 6;
public static final int ARE = 7;
public static final int ARRAY = 8;
public static final int AS = 9;
public static final int ASENSITIVE = 10;
public static final int ASYMMETRIC = 11;
public static final int AT = 12;
public static final int ATOMIC = 13;
public static final int AUTHORIZATION = 14;
public static final int AVG = 15;
public static final int BEGIN = 16;
public static final int BETWEEN = 17;
public static final int BIGINT = 18;
public static final int BINARY = 19;
public static final int BLOB = 20;
public static final int BOOLEAN = 21;
public static final int BOTH = 22;
public static final int BY = 23;
public static final int CALL = 24;
public static final int CALLED = 25;
public static final int CARDINALITY = 26;
public static final int CASCADED = 27;
public static final int CASE = 28;
public static final int CAST = 29;
public static final int CEIL = 30;
public static final int CEILING = 31;
public static final int CHAR = 32;
public static final int CHAR_LENGTH = 33;
public static final int CHARACTER = 34;
public static final int CHARACTER_LENGTH = 35;
public static final int CHECK = 36;
public static final int CLOB = 37;
public static final int CLOSE = 38;
public static final int COALESCE = 39;
public static final int COLLATE = 40;
public static final int COLLECT = 41;
public static final int COLUMN = 42;
public static final int COMMIT = 43;
public static final int COMPARABLE = 44;
public static final int CONDITION = 45;
public static final int CONNECT = 46;
public static final int CONSTRAINT = 47;
public static final int CONVERT = 48;
public static final int CORR = 49;
public static final int CORRESPONDING = 50;
public static final int COUNT = 51;
public static final int COVAR_POP = 52;
public static final int COVAR_SAMP = 53;
public static final int CREATE = 54;
public static final int CROSS = 55;
public static final int CUBE = 56;
public static final int CUME_DIST = 57;
public static final int CURRENT = 58;
public static final int CURRENT_CATALOG = 59;
public static final int CURRENT_DATE = 60;
public static final int CURRENT_DEFAULT_TRANSFORM_GROUP = 61;
public static final int CURRENT_PATH = 62;
public static final int CURRENT_ROLE = 63;
public static final int CURRENT_SCHEMA = 64;
public static final int CURRENT_TIME = 65;
public static final int CURRENT_TIMESTAMP = 66;
public static final int CURRENT_TRANSFORM_GROUP_FOR_TYPE = 67;
public static final int CURRENT_USER = 68;
public static final int CURSOR = 69;
public static final int CYCLE = 70;
public static final int DATE = 71;
public static final int DAY = 72;
public static final int DEALLOCATE = 73;
public static final int DEC = 74;
public static final int DECIMAL = 75;
public static final int DECLARE = 76;
public static final int DEFAULT = 77;
public static final int DELETE = 78;
public static final int DENSE_RANK = 79;
public static final int DEREF = 80;
public static final int DESCRIBE = 81;
public static final int DETERMINISTIC = 82;
public static final int DISCONNECT = 83;
public static final int DISTINCT = 84;
public static final int DO = 85;
public static final int DOUBLE = 86;
public static final int DROP = 87;
public static final int DYNAMIC = 88;
public static final int EACH = 89;
public static final int ELEMENT = 90;
public static final int ELSE = 91;
public static final int ELSEIF = 92;
public static final int END = 93;
public static final int END_EXEC = 94;
public static final int ESCAPE = 95;
public static final int EVERY = 96;
public static final int EXCEPT = 97;
public static final int EXEC = 98;
public static final int EXECUTE = 99;
public static final int EXISTS = 100;
public static final int EXIT = 101;
public static final int EXP = 102;
public static final int EXTERNAL = 103;
public static final int EXTRACT = 104;
public static final int FALSE = 105;
public static final int FETCH = 106;
public static final int FILTER = 107;
public static final int FIRST_VALUE = 108;
public static final int FLOAT = 109;
public static final int FLOOR = 110;
public static final int FOR = 111;
public static final int FOREIGN = 112;
public static final int FREE = 113;
public static final int FROM = 114;
public static final int FULL = 115;
public static final int FUNCTION = 116;
public static final int FUSION = 117;
public static final int GET = 118;
public static final int GLOBAL = 119;
public static final int GRANT = 120;
public static final int GROUP = 121;
public static final int GROUPING = 122;
public static final int HANDLER = 123;
public static final int HAVING = 124;
public static final int HOLD = 125;
public static final int HOUR = 126;
public static final int IDENTITY = 127;
public static final int IMPORT = 128;
public static final int IN = 129;
public static final int INDICATOR = 130;
public static final int INNER = 131;
public static final int INOUT = 132;
public static final int INSENSITIVE = 133;
public static final int INSERT = 134;
public static final int INT = 135;
public static final int INTEGER = 136;
public static final int INTERSECT = 137;
public static final int INTERSECTION = 138;
public static final int INTERVAL = 139;
public static final int INTO = 140;
public static final int IS = 141;
public static final int ITERATE = 142;
public static final int JOIN = 143;
public static final int LAG = 144;
public static final int LANGUAGE = 145;
public static final int LARGE = 146;
public static final int LAST_VALUE = 147;
public static final int LATERAL = 148;
public static final int LEAD = 149;
public static final int LEADING = 150;
public static final int LEAVE = 151;
public static final int LEFT = 152;
public static final int LIKE = 153;
public static final int LIKE_REGEX = 154;
public static final int LN = 155;
public static final int LOCAL = 156;
public static final int LOCALTIME = 157;
public static final int LOCALTIMESTAMP = 158;
public static final int LOOP = 159;
public static final int LOWER = 160;
public static final int MATCH = 161;
public static final int MAX = 162;
public static final int MAX_CARDINALITY = 163;
public static final int MEMBER = 164;
public static final int MERGE = 165;
public static final int METHOD = 166;
public static final int MIN = 167;
public static final int MINUTE = 168;
public static final int MOD = 169;
public static final int MODIFIES = 170;
public static final int MODULE = 171;
public static final int MONTH = 172;
public static final int MULTISET = 173;
public static final int NATIONAL = 174;
public static final int NATURAL = 175;
public static final int NCHAR = 176;
public static final int NCLOB = 177;
public static final int NEW = 178;
public static final int NO = 179;
public static final int NONE = 180;
public static final int NORMALIZE = 181;
public static final int NOT = 182;
public static final int NTH_VALUE = 183;
public static final int NTILE = 184;
public static final int NULL = 185;
public static final int NULLIF = 186;
public static final int NUMERIC = 187;
public static final int OCCURRENCES_REGEX = 188;
public static final int OCTET_LENGTH = 189;
public static final int OF = 190;
public static final int OFFSET = 191;
public static final int OLD = 192;
public static final int ON = 193;
public static final int ONLY = 194;
public static final int OPEN = 195;
public static final int OR = 196;
public static final int ORDER = 197;
public static final int OUT = 198;
public static final int OUTER = 199;
public static final int OVER = 200;
public static final int OVERLAPS = 201;
public static final int OVERLAY = 202;
public static final int PARAMETER = 203;
public static final int PARTITION = 204;
public static final int PERCENT_RANK = 205;
public static final int PERCENTILE_CONT = 206;
public static final int PERCENTILE_DISC = 207;
public static final int POSITION = 208;
public static final int POSITION_REGEX = 209;
public static final int POWER = 210;
public static final int PRECISION = 211;
public static final int PREPARE = 212;
public static final int PRIMARY = 213;
public static final int PROCEDURE = 214;
public static final int RANGE = 215;
public static final int RANK = 216;
public static final int READS = 217;
public static final int REAL = 218;
public static final int RECURSIVE = 219;
public static final int REF = 220;
public static final int REFERENCES = 221;
public static final int REFERENCING = 222;
public static final int REGR_AVGX = 223;
public static final int REGR_AVGY = 224;
public static final int REGR_COUNT = 225;
public static final int REGR_INTERCEPT = 226;
public static final int REGR_R2 = 227;
public static final int REGR_SLOPE = 228;
public static final int REGR_SXX = 229;
public static final int REGR_SXY = 230;
public static final int REGR_SYY = 231;
public static final int RELEASE = 232;
public static final int REPEAT = 233;
public static final int RESIGNAL = 234;
public static final int RESULT = 235;
public static final int RETURN = 236;
public static final int RETURNS = 237;
public static final int REVOKE = 238;
public static final int RIGHT = 239;
public static final int ROLLBACK = 240;
public static final int ROLLUP = 241;
public static final int ROW = 242;
public static final int ROW_NUMBER = 243;
public static final int ROWS = 244;
public static final int SAVEPOINT = 245;
public static final int SCOPE = 246;
public static final int SCROLL = 247;
public static final int SEARCH = 248;
public static final int SECOND = 249;
public static final int SELECT = 250;
public static final int SENSITIVE = 251;
public static final int SESSION_USER = 252;
public static final int SET = 253;
public static final int SIGNAL = 254;
public static final int SIMILAR = 255;
public static final int SMALLINT = 256;
public static final int SOME = 257;
public static final int SPECIFIC = 258;
public static final int SPECIFICTYPE = 259;
public static final int SQL = 260;
public static final int SQLEXCEPTION = 261;
public static final int SQLSTATE = 262;
public static final int SQLWARNING = 263;
public static final int SQRT = 264;
public static final int STACKED = 265;
public static final int START = 266;
public static final int STATIC = 267;
public static final int STDDEV_POP = 268;
public static final int STDDEV_SAMP = 269;
public static final int SUBMULTISET = 270;
public static final int SUBSTRING = 271;
public static final int SUBSTRING_REGEX = 272;
public static final int SUM = 273;
public static final int SYMMETRIC = 274;
public static final int SYSTEM = 275;
public static final int SYSTEM_USER = 276;
public static final int TABLE = 277;
public static final int TABLESAMPLE = 278;
public static final int THEN = 279;
public static final int TIME = 280;
public static final int TIMESTAMP = 281;
public static final int TIMEZONE_HOUR = 282;
public static final int TIMEZONE_MINUTE = 283;
public static final int TO = 284;
public static final int TRAILING = 285;
public static final int TRANSLATE = 286;
public static final int TRANSLATE_REGEX = 287;
public static final int TRANSLATION = 288;
public static final int TREAT = 289;
public static final int TRIGGER = 290;
public static final int TRIM = 291;
public static final int TRIM_ARRAY = 292;
public static final int TRUE = 293;
public static final int TRUNCATE = 294;
public static final int UESCAPE = 295;
public static final int UNDO = 296;
public static final int UNION = 297;
public static final int UNIQUE = 298;
public static final int UNKNOWN = 299;
public static final int UNNEST = 300;
public static final int UNTIL = 301;
public static final int UPDATE = 302;
public static final int UPPER = 303;
public static final int USER = 304;
public static final int USING = 305;
public static final int VALUE = 306;
public static final int VALUES = 307;
public static final int VAR_POP = 308;
public static final int VAR_SAMP = 309;
public static final int VARBINARY = 310;
public static final int VARCHAR = 311;
public static final int VARYING = 312;
public static final int WHEN = 313;
public static final int WHENEVER = 314;
public static final int WHERE = 315;
public static final int WIDTH_BUCKET = 316;
public static final int WINDOW = 317;
public static final int WITH = 318;
public static final int WITHIN = 319;
public static final int WITHOUT = 320;
public static final int WHILE = 321;
public static final int YEAR = 322;
//
//SQL 200n Standard non-reserved keywords - full set
public static final int A = 330;
public static final int ABSOLUTE = 331;
public static final int ACTION = 332;
public static final int ADA = 333;
public static final int ADD = 334;
public static final int ADMIN = 335;
public static final int AFTER = 336;
public static final int ALWAYS = 337;
public static final int ASC = 338;
public static final int ASSERTION = 339;
public static final int ASSIGNMENT = 340;
public static final int ATTRIBUTE = 341;
public static final int ATTRIBUTES = 342;
public static final int BEFORE = 343;
public static final int BERNOULLI = 344;
public static final int BREADTH = 345;
public static final int C = 346;
public static final int CASCADE = 347;
public static final int CATALOG = 348;
public static final int CATALOG_NAME = 349;
public static final int CHAIN = 350;
public static final int CHARACTER_SET_CATALOG = 351;
public static final int CHARACTER_SET_NAME = 352;
public static final int CHARACTER_SET_SCHEMA = 353;
public static final int CHARACTERISTICS = 354;
public static final int CHARACTERS = 355;
public static final int CLASS_ORIGIN = 356;
public static final int COBOL = 357;
public static final int COLLATION = 358;
public static final int COLLATION_CATALOG = 359;
public static final int COLLATION_NAME = 360;
public static final int COLLATION_SCHEMA = 361;
public static final int COLUMN_NAME = 362;
public static final int COMMAND_FUNCTION = 363;
public static final int COMMAND_FUNCTION_CODE = 364;
public static final int COMMITTED = 365;
public static final int CONDITION_IDENTIFIER = 366;
public static final int CONDITION_NUMBER = 367;
public static final int CONNECTION = 368;
public static final int CONNECTION_NAME = 369;
public static final int CONSTRAINT_CATALOG = 370;
public static final int CONSTRAINT_NAME = 371;
public static final int CONSTRAINT_SCHEMA = 372;
public static final int CONSTRAINTS = 373;
public static final int CONSTRUCTOR = 374;
public static final int CONTAINS = 375;
public static final int CONTINUE = 376;
public static final int CURSOR_NAME = 377;
public static final int DATA = 378;
public static final int DATETIME_INTERVAL_CODE = 379;
public static final int DATETIME_INTERVAL_PRECISION = 380;
public static final int DEFAULTS = 381;
public static final int DEFERRABLE = 382;
public static final int DEFERRED = 383;
public static final int DEFINED = 384;
public static final int DEFINER = 385;
public static final int DEGREE = 386;
public static final int DEPTH = 387;
public static final int DERIVED = 388;
public static final int DESC = 389;
public static final int DESCRIPTOR = 390;
public static final int DIAGNOSTICS = 391;
public static final int DISPATCH = 392;
public static final int DOMAIN = 393;
public static final int DYNAMIC_FUNCTION = 394;
public static final int DYNAMIC_FUNCTION_CODE = 395;
public static final int EQUALS = 396;
public static final int EXCEPTION = 397;
public static final int EXCLUDE = 398;
public static final int EXCLUDING = 399;
public static final int FINAL = 400;
public static final int FIRST = 401;
public static final int FOLLOWING = 402;
public static final int FORTRAN = 403;
public static final int FOUND = 404;
public static final int G = 405;
public static final int GENERAL = 406;
public static final int GENERATED = 407;
public static final int GO = 408;
public static final int GOTO = 409;
public static final int GRANTED = 410;
public static final int HIERARCHY = 411;
public static final int IF = 412;
public static final int IGNORE = 413;
public static final int IMMEDIATE = 414;
public static final int IMPLEMENTATION = 415;
public static final int INCLUDING = 416;
public static final int INCREMENT = 417;
public static final int INITIALLY = 418;
public static final int INPUT = 419;
public static final int INSTANCE = 420;
public static final int INSTANTIABLE = 421;
public static final int INSTEAD = 422;
public static final int INVOKER = 423;
public static final int ISOLATION = 424;
public static final int JAVA = 425;
public static final int K = 426;
public static final int KEY = 427;
public static final int KEY_MEMBER = 428;
public static final int KEY_TYPE = 429;
public static final int LAST = 430;
public static final int LENGTH = 431;
public static final int LEVEL = 432;
public static final int LIBRARY = 433;
public static final int LOCATOR = 434;
public static final int M = 435;
public static final int MAP = 436;
public static final int MATCHED = 437;
public static final int MAXVALUE = 438;
public static final int MESSAGE_LENGTH = 439;
public static final int MESSAGE_OCTET_LENGTH = 440;
public static final int MESSAGE_TEXT = 441;
public static final int MINVALUE = 442;
public static final int MORE = 443;
public static final int MUMPS = 444;
public static final int NAME = 445;
public static final int NAMES = 446;
public static final int NESTING = 447;
public static final int NEXT = 448;
public static final int NORMALIZED = 449;
public static final int NULLABLE = 450;
public static final int NULLS = 451;
public static final int NUMBER = 452;
public static final int OBJECT = 453;
public static final int OCTETS = 454;
public static final int OPTION = 455;
public static final int OPTIONS = 456;
public static final int ORDERING = 457;
public static final int ORDINALITY = 458;
public static final int OTHERS = 459;
public static final int OUTPUT = 460;
public static final int OVERRIDING = 461;
public static final int P = 462;
public static final int PAD = 463;
public static final int PARAMETER_MODE = 464;
public static final int PARAMETER_NAME = 465;
public static final int PARAMETER_ORDINAL_POSITION = 466;
public static final int PARAMETER_SPECIFIC_CATALOG = 467;
public static final int PARAMETER_SPECIFIC_NAME = 468;
public static final int PARAMETER_SPECIFIC_SCHEMA = 469;
public static final int PARTIAL = 470;
public static final int PASCAL = 471;
public static final int PATH = 472;
public static final int PLACING = 473;
public static final int PLI = 474;
public static final int PRECEDING = 475;
public static final int PRESERVE = 476;
public static final int PRIOR = 477;
public static final int PRIVILEGES = 478;
public static final int PUBLIC = 479;
public static final int READ = 480;
public static final int RELATIVE = 481;
public static final int REPEATABLE = 482;
public static final int RESPECT = 483;
public static final int RESTART = 484;
public static final int RESTRICT = 485;
public static final int RETURNED_CARDINALITY = 486;
public static final int RETURNED_LENGTH = 487;
public static final int RETURNED_OCTET_LENGTH = 488;
public static final int RETURNED_SQLSTATE = 489;
public static final int ROLE = 490;
public static final int ROUTINE = 491;
public static final int ROUTINE_CATALOG = 492;
public static final int ROUTINE_NAME = 493;
public static final int ROUTINE_SCHEMA = 494;
public static final int ROW_COUNT = 495;
public static final int SCALE = 496;
public static final int SCHEMA = 497;
public static final int SCHEMA_NAME = 498;
public static final int SCOPE_CATALOG = 499;
public static final int SCOPE_NAME = 500;
public static final int SCOPE_SCHEMA = 501;
public static final int SECTION = 502;
public static final int SECURITY = 503;
public static final int SELF = 504;
public static final int SEQUENCE = 505;
public static final int SERIALIZABLE = 506;
public static final int SERVER_NAME = 507;
public static final int SESSION = 508;
public static final int SERVER = 509;
public static final int SETS = 510;
public static final int SIMPLE = 511;
public static final int SIZE = 512;
public static final int SOURCE = 513;
public static final int SPACE = 514;
public static final int SPECIFIC_NAME = 515;
public static final int STATE = 516;
public static final int STATEMENT = 517;
public static final int STRUCTURE = 518;
public static final int STYLE = 519;
public static final int SUBCLASS_ORIGIN = 520;
public static final int T = 521;
public static final int TABLE_NAME = 522;
public static final int TEMPORARY = 523;
public static final int TIES = 524;
public static final int TOP_LEVEL_COUNT = 525;
public static final int TRANSACTION = 526;
public static final int TRANSACTION_ACTIVE = 527;
public static final int TRANSACTIONS_COMMITTED = 528;
public static final int TRANSACTIONS_ROLLED_BACK = 529;
public static final int TRANSFORM = 530;
public static final int TRANSFORMS = 531;
public static final int TRIGGER_CATALOG = 532;
public static final int TRIGGER_NAME = 533;
public static final int TRIGGER_SCHEMA = 534;
public static final int TYPE = 535;
public static final int UNBOUNDED = 536;
public static final int UNCOMMITTED = 537;
public static final int UNDER = 538;
public static final int UNNAMED = 539;
public static final int USAGE = 540;
public static final int USER_DEFINED_TYPE_CATALOG = 541;
public static final int USER_DEFINED_TYPE_CODE = 542;
public static final int USER_DEFINED_TYPE_NAME = 543;
public static final int USER_DEFINED_TYPE_SCHEMA = 544;
public static final int VIEW = 545;
public static final int WORK = 546;
public static final int WRITE = 547;
public static final int WRAPPER = 548;
public static final int ZONE = 549;
// other token values used as switch cases
static final int ALIAS = 551;
static final int AGGREGATE = 552;
static final int AUTOCOMMIT = 553;
static final int BACKUP = 554;
static final int BIT = 555;
static final int BLOCKING = 556;
static final int CACHE = 557;
static final int CACHED = 558;
static final int CASEWHEN = 559;
static final int CHECKPOINT = 560;
static final int CLASS = 561;
static final int COMMENT = 562;
static final int COMPACT = 563;
static final int COMPRESSED = 564;
static final int CONTROL = 565;
static final int DATABASE = 566;
static final int DEFRAG = 567;
static final int DELAY = 568;
static final int EVENT = 569;
static final int EXPLAIN = 570;
static final int FILE = 571;
static final int FILES = 572;
static final int GC = 573;
static final int HEADER = 574;
static final int IGNORECASE = 575;
static final int IMMEDIATELY = 576;
static final int INTEGRITY = 577;
static final int INDEX = 578;
static final int INITIAL = 579;
static final int LIMIT = 580;
static final int LOCK = 581;
static final int LOCKS = 582;
static final int MAXROWS = 583;
static final int MEMORY = 584;
static final int MILLIS = 585;
static final int MINUS_EXCEPT = 586;
static final int OFF = 587;
static final int PASSWORD = 588;
static final int PLAN = 589;
static final int PROPERTY = 590;
static final int READONLY = 591;
static final int REFERENTIAL = 592;
static final int RENAME = 593;
static final int SCRIPT = 594;
static final int SCRIPTFORMAT = 595;
static final int SHUTDOWN = 596;
static final int TEMP = 597;
static final int TEXT = 598;
static final int WRITE_DELAY = 599;
//
static final int ACOS = 601;
static final int ASCII = 602;
static final int ASIN = 603;
static final int ATAN = 604;
static final int ATAN2 = 605;
static final int BIT_LENGTH = 606;
static final int BITAND = 607;
static final int BITLENGTH = 608;
static final int BITOR = 609;
static final int BITXOR = 610;
static final int CONCAT_WORD = 611;
static final int COS = 612;
static final int COT = 613;
static final int CRYPT_KEY = 614;
static final int CURDATE = 615;
static final int CURTIME = 616;
static final int DATEADD = 617;
static final int DATEDIFF = 618;
public static final int DAY_NAME = 619;
public static final int DAY_OF_MONTH = 620;
public static final int DAY_OF_WEEK = 621;
public static final int DAY_OF_YEAR = 622;
static final int DAYNAME = 623;
static final int DAYOFMONTH = 624;
static final int DAYOFWEEK = 625;
static final int DAYOFYEAR = 626;
static final int DECODE = 627;
static final int DEGREES = 628;
static final int DIFFERENCE = 629;
static final int DMOD = 630;
static final int HEXTORAW = 631;
static final int IFNULL = 632;
static final int ISAUTOCOMMIT = 633;
static final int ISREADONLYDATABASE = 634;
static final int ISREADONLYDATABASEFILES = 635;
static final int ISREADONLYSESSION = 636;
static final int LCASE = 637;
static final int LEAST = 638;
static final int LOCATE = 639;
static final int LOB = 640;
static final int LOG = 641;
static final int LOG10 = 642;
static final int LTRIM = 643;
static final int GREATEST = 644;
public static final int MONTH_NAME = 645;
static final int MONTHNAME = 646;
static final int MVCC = 647;
static final int MVLOCKS = 648;
static final int NIO = 649;
static final int NOW = 650;
static final int OCTETLENGTH = 651;
static final int PI = 652;
public static final int QUARTER = 653;
static final int RADIANS = 654;
static final int RAND = 655;
static final int RAWTOHEX = 656;
static final int REGEXP_MATCHES = 657;
static final int REPLACE = 658;
static final int REVERSE = 659;
static final int ROUND = 660;
static final int ROUNDMAGIC = 661;
static final int RTRIM = 662;
public static final int SECONDS_MIDNIGHT = 663;
static final int SIGN = 664;
static final int SIN = 665;
static final int SOUNDEX = 666;
static final int SPACE_WORD = 667;
static final int SUBSTR = 668;
static final int SYSDATE = 669;
static final int TAN = 670;
static final int TIMESTAMPADD = 671;
static final int TIMESTAMPDIFF = 672;
static final int TO_CHAR = 673;
static final int TODAY = 674;
static final int TOP = 675;
static final int UCASE = 676;
static final int WEEK = 677;
public static final int WEEK_OF_YEAR = 678;
//
static final int ISOLATION_LEVEL = 681;
static final int SESSION_ISOLATION_LEVEL = 682;
static final int DATABASE_ISOLATION_LEVEL = 683;
static final int TRANSACTION_CONTROL = 684;
static final int TIMEZONE = 685;
static final int SESSION_TIMEZONE = 686;
static final int DATABASE_TIMEZONE = 687;
static final int DATABASE_VERSION = 688;
//
static final int ASTERISK = 771;
static final int CLOSEBRACKET = 772;
static final int COLON = 773;
static final int COMMA = 774;
static final int CONCAT = 775;
static final int DIVIDE = 776;
static final int DOUBLE_COLON_OP = 777;
static final int DOUBLE_PERIOD_OP = 778;
static final int GREATER = 779;
static final int GREATER_EQUALS = 780;
static final int LEFTBRACKET = 781;
static final int LESS = 782;
static final int LESS_EQUALS = 783;
public static final int MINUS = 784;
static final int NOT_EQUALS = 785;
static final int OPENBRACKET = 786;
static final int PLUS = 787;
static final int QUESTION = 788;
static final int RIGHT_ARROW_OP = 789;
static final int RIGHTBRACKET = 790;
static final int SEMICOLON = 791;
//
static final int SQL_BIGINT = 801;
static final int SQL_BINARY = 802;
static final int SQL_BIT = 803;
static final int SQL_BLOB = 804;
static final int SQL_BOOLEAN = 805;
static final int SQL_CHAR = 806;
static final int SQL_CLOB = 807;
static final int SQL_DATE = 808;
static final int SQL_DECIMAL = 809;
static final int SQL_DATALINK = 810;
static final int SQL_DOUBLE = 811;
static final int SQL_FLOAT = 812;
static final int SQL_INTEGER = 813;
static final int SQL_LONGVARBINARY = 814;
static final int SQL_LONGNVARCHAR = 815;
static final int SQL_LONGVARCHAR = 816;
static final int SQL_NCHAR = 817;
static final int SQL_NCLOB = 818;
static final int SQL_NUMERIC = 819;
static final int SQL_NVARCHAR = 820;
static final int SQL_REAL = 821;
static final int SQL_ROWID = 822;
static final int SQL_SQLXML = 823;
static final int SQL_SMALLINT = 824;
static final int SQL_TIME = 825;
static final int SQL_TIMESTAMP = 826;
static final int SQL_TINYINT = 827;
static final int SQL_VARBINARY = 828;
static final int SQL_VARCHAR = 829;
//
static final int SQL_TSI_FRAC_SECOND = 831;
static final int SQL_TSI_SECOND = 832;
static final int SQL_TSI_MINUTE = 833;
static final int SQL_TSI_HOUR = 834;
static final int SQL_TSI_DAY = 835;
static final int SQL_TSI_WEEK = 836;
static final int SQL_TSI_MONTH = 837;
static final int SQL_TSI_QUARTER = 838;
static final int SQL_TSI_YEAR = 839;
//
static final int X_KEYSET = 841;
static final int X_OPTION = 842;
static final int X_REPEAT = 843;
static final int X_POS_INTEGER = 844;
//
public static final int X_VALUE = 845;
public static final int X_IDENTIFIER = 846;
public static final int X_DELIMITED_IDENTIFIER = 847;
public static final int X_ENDPARSE = 848;
public static final int X_STARTPARSE = 849;
public static final int X_REMARK = 850;
public static final int X_NULL = 851;
public static final int X_LOB_SIZE = 852;
public static final int X_MALFORMED_STRING = 853;
public static final int X_MALFORMED_NUMERIC = 854;
public static final int X_MALFORMED_BIT_STRING = 855;
public static final int X_MALFORMED_BINARY_STRING = 856;
public static final int X_MALFORMED_UNICODE_STRING = 857;
public static final int X_MALFORMED_COMMENT = 858;
public static final int X_MALFORMED_IDENTIFIER = 859;
public static final int X_MALFORMED_UNICODE_ESCAPE = 860;
//
public static final int X_UNKNOWN_TOKEN = -1;
private static final IntValueHashMap reservedKeys =
new IntValueHashMap(351);
static {
reservedKeys.put(Tokens.T_ABS, ABS);
reservedKeys.put(Tokens.T_AGGREGATE, AGGREGATE);
reservedKeys.put(Tokens.T_ALL, ALL);
reservedKeys.put(Tokens.T_ALLOCATE, ALLOCATE);
reservedKeys.put(Tokens.T_ALTER, ALTER);
reservedKeys.put(Tokens.T_AND, AND);
reservedKeys.put(Tokens.T_ANY, ANY);
reservedKeys.put(Tokens.T_ARE, ARE);
reservedKeys.put(Tokens.T_ARRAY, ARRAY);
reservedKeys.put(Tokens.T_AS, AS);
reservedKeys.put(Tokens.T_ASENSITIVE, ASENSITIVE);
reservedKeys.put(Tokens.T_ASYMMETRIC, ASYMMETRIC);
reservedKeys.put(Tokens.T_AT, AT);
reservedKeys.put(Tokens.T_ATOMIC, ATOMIC);
reservedKeys.put(Tokens.T_AUTHORIZATION, AUTHORIZATION);
reservedKeys.put(Tokens.T_AVG, AVG);
reservedKeys.put(Tokens.T_BEGIN, BEGIN);
reservedKeys.put(Tokens.T_BETWEEN, BETWEEN);
reservedKeys.put(Tokens.T_BIGINT, BIGINT);
reservedKeys.put(Tokens.T_BINARY, BINARY);
reservedKeys.put(Tokens.T_BIT_LENGTH, BIT_LENGTH);
reservedKeys.put(Tokens.T_BLOB, BLOB);
reservedKeys.put(Tokens.T_BOOLEAN, BOOLEAN);
reservedKeys.put(Tokens.T_BOTH, BOTH);
reservedKeys.put(Tokens.T_BY, BY);
reservedKeys.put(Tokens.T_CALL, CALL);
reservedKeys.put(Tokens.T_CALLED, CALLED);
reservedKeys.put(Tokens.T_CARDINALITY, CARDINALITY);
reservedKeys.put(Tokens.T_CASCADED, CASCADED);
reservedKeys.put(Tokens.T_CASE, CASE);
reservedKeys.put(Tokens.T_CAST, CAST);
reservedKeys.put(Tokens.T_CEIL, CEIL);
reservedKeys.put(Tokens.T_CEILING, CEILING);
reservedKeys.put(Tokens.T_CHAR, CHAR);
reservedKeys.put(Tokens.T_CHAR_LENGTH, CHAR_LENGTH);
reservedKeys.put(Tokens.T_CHARACTER, CHARACTER);
reservedKeys.put(Tokens.T_CHARACTER_LENGTH, CHARACTER_LENGTH);
reservedKeys.put(Tokens.T_CHECK, CHECK);
reservedKeys.put(Tokens.T_CLOB, CLOB);
reservedKeys.put(Tokens.T_CLOSE, CLOSE);
reservedKeys.put(Tokens.T_COALESCE, COALESCE);
reservedKeys.put(Tokens.T_COLLATE, COLLATE);
reservedKeys.put(Tokens.T_COLLECT, COLLECT);
reservedKeys.put(Tokens.T_COLUMN, COLUMN);
reservedKeys.put(Tokens.T_COMMIT, COMMIT);
reservedKeys.put(Tokens.T_COMPARABLE, COMPARABLE);
reservedKeys.put(Tokens.T_CONDITION, CONDITION);
reservedKeys.put(Tokens.T_CONNECT, CONNECT);
reservedKeys.put(Tokens.T_CONSTRAINT, CONSTRAINT);
reservedKeys.put(Tokens.T_CONVERT, CONVERT);
reservedKeys.put(Tokens.T_CORR, CORR);
reservedKeys.put(Tokens.T_CORRESPONDING, CORRESPONDING);
reservedKeys.put(Tokens.T_COUNT, COUNT);
reservedKeys.put(Tokens.T_COVAR_POP, COVAR_POP);
reservedKeys.put(Tokens.T_COVAR_SAMP, COVAR_SAMP);
reservedKeys.put(Tokens.T_CREATE, CREATE);
reservedKeys.put(Tokens.T_CROSS, CROSS);
reservedKeys.put(Tokens.T_CUBE, CUBE);
reservedKeys.put(Tokens.T_CUME_DIST, CUME_DIST);
reservedKeys.put(Tokens.T_CURRENT, CURRENT);
reservedKeys.put(Tokens.T_CURRENT_CATALOG, CURRENT_CATALOG);
reservedKeys.put(Tokens.T_CURRENT_DATE, CURRENT_DATE);
reservedKeys.put(Tokens.T_CURRENT_DEFAULT_TRANSFORM_GROUP,
CURRENT_DEFAULT_TRANSFORM_GROUP);
reservedKeys.put(Tokens.T_CURRENT_PATH, CURRENT_PATH);
reservedKeys.put(Tokens.T_CURRENT_ROLE, CURRENT_ROLE);
reservedKeys.put(Tokens.T_CURRENT_SCHEMA, CURRENT_SCHEMA);
reservedKeys.put(Tokens.T_CURRENT_TIME, CURRENT_TIME);
reservedKeys.put(Tokens.T_CURRENT_TIMESTAMP, CURRENT_TIMESTAMP);
reservedKeys.put(Tokens.T_DO, DO);
reservedKeys.put(Tokens.T_CURRENT_TRANSFORM_GROUP_FOR_TYPE,
CURRENT_TRANSFORM_GROUP_FOR_TYPE);
reservedKeys.put(Tokens.T_CURRENT_USER, CURRENT_USER);
reservedKeys.put(Tokens.T_CURSOR, CURSOR);
reservedKeys.put(Tokens.T_CYCLE, CYCLE);
reservedKeys.put(Tokens.T_DATE, DATE);
reservedKeys.put(Tokens.T_DAY, DAY);
reservedKeys.put(Tokens.T_DEALLOCATE, DEALLOCATE);
reservedKeys.put(Tokens.T_DEC, DEC);
reservedKeys.put(Tokens.T_DECIMAL, DECIMAL);
reservedKeys.put(Tokens.T_DECLARE, DECLARE);
reservedKeys.put(Tokens.T_DEFAULT, DEFAULT);
reservedKeys.put(Tokens.T_DELETE, DELETE);
reservedKeys.put(Tokens.T_DENSE_RANK, DENSE_RANK);
reservedKeys.put(Tokens.T_DEREF, DEREF);
reservedKeys.put(Tokens.T_DESCRIBE, DESCRIBE);
reservedKeys.put(Tokens.T_DETERMINISTIC, DETERMINISTIC);
reservedKeys.put(Tokens.T_DISCONNECT, DISCONNECT);
reservedKeys.put(Tokens.T_DISTINCT, DISTINCT);
reservedKeys.put(Tokens.T_DOUBLE, DOUBLE);
reservedKeys.put(Tokens.T_DROP, DROP);
reservedKeys.put(Tokens.T_DYNAMIC, DYNAMIC);
reservedKeys.put(Tokens.T_EACH, EACH);
reservedKeys.put(Tokens.T_ELEMENT, ELEMENT);
reservedKeys.put(Tokens.T_ELSE, ELSE);
reservedKeys.put(Tokens.T_ELSEIF, ELSEIF);
reservedKeys.put(Tokens.T_END, END);
reservedKeys.put(Tokens.T_END_EXEC, END_EXEC);
reservedKeys.put(Tokens.T_ESCAPE, ESCAPE);
reservedKeys.put(Tokens.T_EVERY, EVERY);
reservedKeys.put(Tokens.T_EXCEPT, EXCEPT);
reservedKeys.put(Tokens.T_EXEC, EXEC);
reservedKeys.put(Tokens.T_EXECUTE, EXECUTE);
reservedKeys.put(Tokens.T_EXISTS, EXISTS);
reservedKeys.put(Tokens.T_EXIT, EXIT);
reservedKeys.put(Tokens.T_EXP, EXP);
reservedKeys.put(Tokens.T_EXTERNAL, EXTERNAL);
reservedKeys.put(Tokens.T_EXTRACT, EXTRACT);
reservedKeys.put(Tokens.T_FALSE, FALSE);
reservedKeys.put(Tokens.T_FETCH, FETCH);
reservedKeys.put(Tokens.T_FILTER, FILTER);
reservedKeys.put(Tokens.T_FIRST_VALUE, FIRST_VALUE);
reservedKeys.put(Tokens.T_FLOAT, FLOAT);
reservedKeys.put(Tokens.T_FLOOR, FLOOR);
reservedKeys.put(Tokens.T_FOR, FOR);
reservedKeys.put(Tokens.T_FOREIGN, FOREIGN);
reservedKeys.put(Tokens.T_FREE, FREE);
reservedKeys.put(Tokens.T_FROM, FROM);
reservedKeys.put(Tokens.T_FULL, FULL);
reservedKeys.put(Tokens.T_FUNCTION, FUNCTION);
reservedKeys.put(Tokens.T_FUSION, FUSION);
reservedKeys.put(Tokens.T_GET, GET);
reservedKeys.put(Tokens.T_GLOBAL, GLOBAL);
reservedKeys.put(Tokens.T_GRANT, GRANT);
reservedKeys.put(Tokens.T_GROUP, GROUP);
reservedKeys.put(Tokens.T_GROUPING, GROUPING);
reservedKeys.put(Tokens.T_HANDLER, HANDLER);
reservedKeys.put(Tokens.T_HAVING, HAVING);
reservedKeys.put(Tokens.T_HOLD, HOLD);
reservedKeys.put(Tokens.T_HOUR, HOUR);
reservedKeys.put(Tokens.T_IDENTITY, IDENTITY);
reservedKeys.put(Tokens.T_IF, IF);
reservedKeys.put(Tokens.T_IMPORT, IMPORT);
reservedKeys.put(Tokens.T_IN, IN);
reservedKeys.put(Tokens.T_INDICATOR, INDICATOR);
reservedKeys.put(Tokens.T_INNER, INNER);
reservedKeys.put(Tokens.T_INOUT, INOUT);
reservedKeys.put(Tokens.T_INSENSITIVE, INSENSITIVE);
reservedKeys.put(Tokens.T_INSERT, INSERT);
reservedKeys.put(Tokens.T_INT, INT);
reservedKeys.put(Tokens.T_INTEGER, INTEGER);
reservedKeys.put(Tokens.T_INTERSECT, INTERSECT);
reservedKeys.put(Tokens.T_INTERSECTION, INTERSECTION);
reservedKeys.put(Tokens.T_INTERVAL, INTERVAL);
reservedKeys.put(Tokens.T_INTO, INTO);
reservedKeys.put(Tokens.T_IS, IS);
reservedKeys.put(Tokens.T_ITERATE, ITERATE);
reservedKeys.put(Tokens.T_JOIN, JOIN);
reservedKeys.put(Tokens.T_LAG, LAG);
reservedKeys.put(Tokens.T_LANGUAGE, LANGUAGE);
reservedKeys.put(Tokens.T_LARGE, LARGE);
reservedKeys.put(Tokens.T_LAST_VALUE, LAST_VALUE);
reservedKeys.put(Tokens.T_LATERAL, LATERAL);
reservedKeys.put(Tokens.T_LEAD, LEAD);
reservedKeys.put(Tokens.T_LEADING, LEADING);
reservedKeys.put(Tokens.T_LEAVE, LEAVE);
reservedKeys.put(Tokens.T_LEFT, LEFT);
reservedKeys.put(Tokens.T_LIKE, LIKE);
reservedKeys.put(Tokens.T_LIKE_REGX, LIKE_REGEX);
reservedKeys.put(Tokens.T_LN, LN);
reservedKeys.put(Tokens.T_LOCAL, LOCAL);
reservedKeys.put(Tokens.T_LOCALTIME, LOCALTIME);
reservedKeys.put(Tokens.T_LOCALTIMESTAMP, LOCALTIMESTAMP);
reservedKeys.put(Tokens.T_LOOP, LOOP);
reservedKeys.put(Tokens.T_LOWER, LOWER);
reservedKeys.put(Tokens.T_MATCH, MATCH);
reservedKeys.put(Tokens.T_MAX, MAX);
reservedKeys.put(Tokens.T_MAX_CARDINALITY, MAX_CARDINALITY);
reservedKeys.put(Tokens.T_MEMBER, MEMBER);
reservedKeys.put(Tokens.T_MERGE, MERGE);
reservedKeys.put(Tokens.T_METHOD, METHOD);
reservedKeys.put(Tokens.T_MIN, MIN);
reservedKeys.put(Tokens.T_MINUTE, MINUTE);
reservedKeys.put(Tokens.T_MOD, MOD);
reservedKeys.put(Tokens.T_MODIFIES, MODIFIES);
reservedKeys.put(Tokens.T_MODULE, MODULE);
reservedKeys.put(Tokens.T_MONTH, MONTH);
reservedKeys.put(Tokens.T_MULTISET, MULTISET);
reservedKeys.put(Tokens.T_NATIONAL, NATIONAL);
reservedKeys.put(Tokens.T_NATURAL, NATURAL);
reservedKeys.put(Tokens.T_NCHAR, NCHAR);
reservedKeys.put(Tokens.T_NCLOB, NCLOB);
reservedKeys.put(Tokens.T_NEW, NEW);
reservedKeys.put(Tokens.T_NO, NO);
reservedKeys.put(Tokens.T_NONE, NONE);
reservedKeys.put(Tokens.T_NORMALIZE, NORMALIZE);
reservedKeys.put(Tokens.T_NOT, NOT);
reservedKeys.put(Tokens.T_NTH_VALUE, NTH_VALUE);
reservedKeys.put(Tokens.T_NTILE, NTILE);
reservedKeys.put(Tokens.T_NULL, NULL);
reservedKeys.put(Tokens.T_NULLIF, NULLIF);
reservedKeys.put(Tokens.T_NUMERIC, NUMERIC);
reservedKeys.put(Tokens.T_OCCURRENCES_REGEX, OCCURRENCES_REGEX);
reservedKeys.put(Tokens.T_OCTET_LENGTH, OCTET_LENGTH);
reservedKeys.put(Tokens.T_OF, OF);
reservedKeys.put(Tokens.T_OFFSET, OFFSET);
reservedKeys.put(Tokens.T_OLD, OLD);
reservedKeys.put(Tokens.T_ON, ON);
reservedKeys.put(Tokens.T_ONLY, ONLY);
reservedKeys.put(Tokens.T_OPEN, OPEN);
reservedKeys.put(Tokens.T_OR, OR);
reservedKeys.put(Tokens.T_ORDER, ORDER);
reservedKeys.put(Tokens.T_OUT, OUT);
reservedKeys.put(Tokens.T_OUTER, OUTER);
reservedKeys.put(Tokens.T_OVER, OVER);
reservedKeys.put(Tokens.T_OVERLAPS, OVERLAPS);
reservedKeys.put(Tokens.T_OVERLAY, OVERLAY);
reservedKeys.put(Tokens.T_PARAMETER, PARAMETER);
reservedKeys.put(Tokens.T_PARTITION, PARTITION);
reservedKeys.put(Tokens.T_PERCENT_RANK, PERCENT_RANK);
reservedKeys.put(Tokens.T_PERCENTILE_CONT, PERCENTILE_CONT);
reservedKeys.put(Tokens.T_PERCENTILE_DISC, PERCENTILE_DISC);
reservedKeys.put(Tokens.T_POSITION, POSITION);
reservedKeys.put(Tokens.T_POSITION_REGEX, POSITION_REGEX);
reservedKeys.put(Tokens.T_POWER, POWER);
reservedKeys.put(Tokens.T_PRECISION, PRECISION);
reservedKeys.put(Tokens.T_PREPARE, PREPARE);
reservedKeys.put(Tokens.T_PRIMARY, PRIMARY);
reservedKeys.put(Tokens.T_PROCEDURE, PROCEDURE);
reservedKeys.put(Tokens.T_RANGE, RANGE);
reservedKeys.put(Tokens.T_RANK, RANK);
reservedKeys.put(Tokens.T_READS, READS);
reservedKeys.put(Tokens.T_REAL, REAL);
reservedKeys.put(Tokens.T_RECURSIVE, RECURSIVE);
reservedKeys.put(Tokens.T_REF, REF);
reservedKeys.put(Tokens.T_REFERENCES, REFERENCES);
reservedKeys.put(Tokens.T_REFERENCING, REFERENCING);
reservedKeys.put(Tokens.T_REGR_AVGX, REGR_AVGX);
reservedKeys.put(Tokens.T_REGR_AVGY, REGR_AVGY);
reservedKeys.put(Tokens.T_REGR_COUNT, REGR_COUNT);
reservedKeys.put(Tokens.T_REGR_INTERCEPT, REGR_INTERCEPT);
reservedKeys.put(Tokens.T_REGR_R2, REGR_R2);
reservedKeys.put(Tokens.T_REGR_SLOPE, REGR_SLOPE);
reservedKeys.put(Tokens.T_REGR_SXX, REGR_SXX);
reservedKeys.put(Tokens.T_REGR_SXY, REGR_SXY);
reservedKeys.put(Tokens.T_REGR_SYY, REGR_SYY);
reservedKeys.put(Tokens.T_RELEASE, RELEASE);
reservedKeys.put(Tokens.T_REPEAT, REPEAT);
reservedKeys.put(Tokens.T_RESIGNAL, RESIGNAL);
reservedKeys.put(Tokens.T_RETURN, RETURN);
reservedKeys.put(Tokens.T_RETURNS, RETURNS);
reservedKeys.put(Tokens.T_REVOKE, REVOKE);
reservedKeys.put(Tokens.T_RIGHT, RIGHT);
reservedKeys.put(Tokens.T_ROLLBACK, ROLLBACK);
reservedKeys.put(Tokens.T_ROLLUP, ROLLUP);
reservedKeys.put(Tokens.T_ROW, ROW);
reservedKeys.put(Tokens.T_ROW_NUMBER, ROW_NUMBER);
reservedKeys.put(Tokens.T_ROWS, ROWS);
reservedKeys.put(Tokens.T_SAVEPOINT, SAVEPOINT);
reservedKeys.put(Tokens.T_SCOPE, SCOPE);
reservedKeys.put(Tokens.T_SCROLL, SCROLL);
reservedKeys.put(Tokens.T_SEARCH, SEARCH);
reservedKeys.put(Tokens.T_SECOND, SECOND);
reservedKeys.put(Tokens.T_SELECT, SELECT);
reservedKeys.put(Tokens.T_SENSITIVE, SENSITIVE);
reservedKeys.put(Tokens.T_SESSION_USER, SESSION_USER);
reservedKeys.put(Tokens.T_SET, SET);
reservedKeys.put(Tokens.T_SIGNAL, SIGNAL);
reservedKeys.put(Tokens.T_SIMILAR, SIMILAR);
reservedKeys.put(Tokens.T_SMALLINT, SMALLINT);
reservedKeys.put(Tokens.T_SOME, SOME);
reservedKeys.put(Tokens.T_SPECIFIC, SPECIFIC);
reservedKeys.put(Tokens.T_SPECIFICTYPE, SPECIFICTYPE);
reservedKeys.put(Tokens.T_SQL, SQL);
reservedKeys.put(Tokens.T_SQLEXCEPTION, SQLEXCEPTION);
reservedKeys.put(Tokens.T_SQLSTATE, SQLSTATE);
reservedKeys.put(Tokens.T_SQLWARNING, SQLWARNING);
reservedKeys.put(Tokens.T_SQRT, SQRT);
reservedKeys.put(Tokens.T_STACKED, STACKED);
reservedKeys.put(Tokens.T_START, START);
reservedKeys.put(Tokens.T_STATIC, STATIC);
reservedKeys.put(Tokens.T_STDDEV_POP, STDDEV_POP);
reservedKeys.put(Tokens.T_STDDEV_SAMP, STDDEV_SAMP);
reservedKeys.put(Tokens.T_SUBMULTISET, SUBMULTISET);
reservedKeys.put(Tokens.T_SUBSTRING, SUBSTRING);
reservedKeys.put(Tokens.T_SUBSTRING_REGEX, SUBSTRING_REGEX);
reservedKeys.put(Tokens.T_SUM, SUM);
reservedKeys.put(Tokens.T_SYMMETRIC, SYMMETRIC);
reservedKeys.put(Tokens.T_SYSTEM, SYSTEM);
reservedKeys.put(Tokens.T_SYSTEM_USER, SYSTEM_USER);
reservedKeys.put(Tokens.T_TABLE, TABLE);
reservedKeys.put(Tokens.T_TABLESAMPLE, TABLESAMPLE);
reservedKeys.put(Tokens.T_THEN, THEN);
reservedKeys.put(Tokens.T_TIME, TIME);
reservedKeys.put(Tokens.T_TIMESTAMP, TIMESTAMP);
reservedKeys.put(Tokens.T_TIMEZONE_HOUR, TIMEZONE_HOUR);
reservedKeys.put(Tokens.T_TIMEZONE_MINUTE, TIMEZONE_MINUTE);
reservedKeys.put(Tokens.T_TO, TO);
reservedKeys.put(Tokens.T_TRAILING, TRAILING);
reservedKeys.put(Tokens.T_TRANSLATE, TRANSLATE);
reservedKeys.put(Tokens.T_TRANSLATE_REGEX, TRANSLATE_REGEX);
reservedKeys.put(Tokens.T_TRANSLATION, TRANSLATION);
reservedKeys.put(Tokens.T_TREAT, TREAT);
reservedKeys.put(Tokens.T_TRIGGER, TRIGGER);
reservedKeys.put(Tokens.T_TRIM, TRIM);
reservedKeys.put(Tokens.T_TRIM_ARRAY, TRIM_ARRAY);
reservedKeys.put(Tokens.T_TRUE, TRUE);
reservedKeys.put(Tokens.T_TRUNCATE, TRUNCATE);
reservedKeys.put(Tokens.T_UESCAPE, UESCAPE);
reservedKeys.put(Tokens.T_UNDO, UNDO);
reservedKeys.put(Tokens.T_UNION, UNION);
reservedKeys.put(Tokens.T_UNIQUE, UNIQUE);
reservedKeys.put(Tokens.T_UNKNOWN, UNKNOWN);
reservedKeys.put(Tokens.T_UNNEST, UNNEST);
reservedKeys.put(Tokens.T_UNTIL, UNTIL);
reservedKeys.put(Tokens.T_UPDATE, UPDATE);
reservedKeys.put(Tokens.T_UPPER, UPPER);
reservedKeys.put(Tokens.T_USER, USER);
reservedKeys.put(Tokens.T_USING, USING);
reservedKeys.put(Tokens.T_VALUE, VALUE);
reservedKeys.put(Tokens.T_VALUES, VALUES);
reservedKeys.put(Tokens.T_VAR_POP, VAR_POP);
reservedKeys.put(Tokens.T_VAR_SAMP, VAR_SAMP);
reservedKeys.put(Tokens.T_VARBINARY, VARBINARY);
reservedKeys.put(Tokens.T_VARCHAR, VARCHAR);
reservedKeys.put(Tokens.T_VARYING, VARYING);
reservedKeys.put(Tokens.T_WHEN, WHEN);
reservedKeys.put(Tokens.T_WHENEVER, WHENEVER);
reservedKeys.put(Tokens.T_WHERE, WHERE);
reservedKeys.put(Tokens.T_WIDTH_BUCKET, WIDTH_BUCKET);
reservedKeys.put(Tokens.T_WINDOW, WINDOW);
reservedKeys.put(Tokens.T_WITH, WITH);
reservedKeys.put(Tokens.T_WITHIN, WITHIN);
reservedKeys.put(Tokens.T_WITHOUT, WITHOUT);
reservedKeys.put(Tokens.T_WHILE, WHILE);
reservedKeys.put(Tokens.T_YEAR, YEAR);
}
private static final IntValueHashMap commandSet = new IntValueHashMap(251);
static {
commandSet.put(T_ACTION, ACTION);
commandSet.put(T_ADD, ADD);
commandSet.put(T_ADMIN, ADMIN);
commandSet.put(T_AFTER, AFTER);
commandSet.put(T_ALIAS, ALIAS);
commandSet.put(T_ALWAYS, ALWAYS);
commandSet.put(T_ASC, ASC);
commandSet.put(T_AUTOCOMMIT, AUTOCOMMIT);
commandSet.put(T_BACKUP, BACKUP);
commandSet.put(T_BEFORE, BEFORE);
commandSet.put(T_BIT, BIT);
commandSet.put(T_BLOCKING, BLOCKING);
commandSet.put(T_CACHE, CACHE);
commandSet.put(T_CACHED, CACHED);
commandSet.put(T_CASCADE, CASCADE);
commandSet.put(T_CATALOG, CATALOG);
commandSet.put(T_CHARACTERISTICS, CHARACTERISTICS);
commandSet.put(T_CHECKPOINT, CHECKPOINT);
commandSet.put(T_CRYPT_KEY, CRYPT_KEY);
commandSet.put(T_CLASS, CLASS);
commandSet.put(T_COLLATE, COLLATE);
commandSet.put(T_COLLATION, COLLATION);
commandSet.put(T_COMMENT, COMMENT);
commandSet.put(T_COMMITTED, COMMITTED);
commandSet.put(T_COMPACT, COMPACT);
commandSet.put(T_COMPRESSED, COMPRESSED);
commandSet.put(T_CONDITION_IDENTIFIER, Tokens.CONDITION_IDENTIFIER);
commandSet.put(T_CONTAINS, CONTAINS);
commandSet.put(T_CONTINUE, CONTINUE);
commandSet.put(T_CONTROL, CONTROL);
commandSet.put(T_CURDATE, CURDATE);
commandSet.put(T_CURTIME, CURTIME);
commandSet.put(T_DATA, DATA);
commandSet.put(T_DATABASE, DATABASE);
commandSet.put(T_DEFAULTS, DEFAULTS);
commandSet.put(T_DEFRAG, DEFRAG);
commandSet.put(T_DELAY, DELAY);
commandSet.put(T_DESC, DESC);
commandSet.put(T_DOMAIN, DOMAIN);
commandSet.put(T_EVENT, EVENT);
commandSet.put(T_EXCLUDING, EXCLUDING);
commandSet.put(T_EXPLAIN, EXPLAIN);
commandSet.put(T_FILE, FILE);
commandSet.put(T_FILES, FILES);
commandSet.put(T_FINAL, FINAL);
commandSet.put(T_FIRST, FIRST);
commandSet.put(T_G_FACTOR, G);
commandSet.put(T_GC, GC);
commandSet.put(T_GENERATED, GENERATED);
commandSet.put(T_GRANTED, GRANTED);
commandSet.put(T_HEADER, HEADER);
commandSet.put(T_IF, Tokens.IF);
commandSet.put(T_IGNORECASE, IGNORECASE);
commandSet.put(T_IMMEDIATELY, IMMEDIATELY);
commandSet.put(T_INCLUDING, INCLUDING);
commandSet.put(T_INCREMENT, INCREMENT);
commandSet.put(T_INDEX, INDEX);
commandSet.put(T_INITIAL, INITIAL);
commandSet.put(T_INPUT, INPUT);
commandSet.put(T_INSTEAD, INSTEAD);
commandSet.put(T_INTEGRITY, INTEGRITY);
commandSet.put(T_ISAUTOCOMMIT, ISAUTOCOMMIT);
commandSet.put(T_ISOLATION, ISOLATION);
commandSet.put(T_ISREADONLYDATABASE, ISREADONLYDATABASE);
commandSet.put(T_ISREADONLYDATABASEFILES, ISREADONLYDATABASEFILES);
commandSet.put(T_ISREADONLYSESSION, ISREADONLYSESSION);
commandSet.put(T_JAVA, JAVA);
commandSet.put(T_K_FACTOR, K);
commandSet.put(T_KEY, KEY);
commandSet.put(T_LAST, LAST);
commandSet.put(T_LENGTH, LENGTH);
commandSet.put(T_LEVEL, LEVEL);
commandSet.put(T_LIBRARY, LIBRARY);
commandSet.put(T_LIMIT, LIMIT);
commandSet.put(T_LOB, LOB);
commandSet.put(T_LOCK, LOCK);
commandSet.put(T_LOCKS, LOCKS);
commandSet.put(T_M_FACTOR, M);
commandSet.put(T_MATCHED, MATCHED);
commandSet.put(T_MAXROWS, MAXROWS);
commandSet.put(T_MAXVALUE, MAXVALUE);
commandSet.put(T_MEMORY, MEMORY);
commandSet.put(T_MILLIS, MILLIS);
commandSet.put(T_MINUS_EXCEPT, MINUS_EXCEPT);
commandSet.put(T_MINVALUE, MINVALUE);
commandSet.put(T_MVCC, MVCC);
commandSet.put(T_MVLOCKS, MVLOCKS);
commandSet.put(T_NAME, NAME);
commandSet.put(T_NEXT, NEXT);
commandSet.put(T_NIO, NIO);
commandSet.put(T_NOW, NOW);
commandSet.put(T_NULLS, NULLS);
commandSet.put(T_OFF, OFF);
commandSet.put(T_OPTION, OPTION);
commandSet.put(T_ORDINALITY, ORDINALITY);
commandSet.put(T_OVERRIDING, OVERRIDING);
commandSet.put(T_P_FACTOR, P);
commandSet.put(T_PARTIAL, PARTIAL);
commandSet.put(T_PASSWORD, PASSWORD);
commandSet.put(T_PLACING, PLACING);
commandSet.put(T_PLAN, PLAN);
commandSet.put(T_PRESERVE, PRESERVE);
commandSet.put(T_PRIVILEGES, PRIVILEGES);
commandSet.put(T_PROPERTY, PROPERTY);
commandSet.put(T_READ, READ);
commandSet.put(T_READONLY, READONLY);
commandSet.put(T_REFERENTIAL, REFERENTIAL);
commandSet.put(T_RENAME, RENAME);
commandSet.put(T_REPEATABLE, REPEATABLE);
commandSet.put(T_RESTART, RESTART);
commandSet.put(T_RESTRICT, RESTRICT);
commandSet.put(T_RESULT, RESULT);
commandSet.put(T_ROLE, ROLE);
commandSet.put(T_ROUTINE, ROUTINE);
commandSet.put(T_SCALE, SCALE);
commandSet.put(T_SCHEMA, SCHEMA);
commandSet.put(T_SCRIPT, SCRIPT);
commandSet.put(T_SCRIPTFORMAT, SCRIPTFORMAT);
commandSet.put(T_SEQUENCE, SEQUENCE);
commandSet.put(T_SERIALIZABLE, SERIALIZABLE);
commandSet.put(T_SERVER, SERVER);
commandSet.put(T_SESSION, SESSION);
commandSet.put(T_SHUTDOWN, SHUTDOWN);
commandSet.put(T_SIMPLE, SIMPLE);
commandSet.put(T_SIZE, SIZE);
commandSet.put(T_SOURCE, SOURCE);
commandSet.put(T_SQL_BIGINT, SQL_BIGINT);
commandSet.put(T_SQL_BINARY, SQL_BINARY);
commandSet.put(T_SQL_BIT, SQL_BIT);
commandSet.put(T_SQL_BLOB, SQL_BLOB);
commandSet.put(T_SQL_BOOLEAN, SQL_BOOLEAN);
commandSet.put(T_SQL_CHAR, SQL_CHAR);
commandSet.put(T_SQL_CLOB, SQL_CLOB);
commandSet.put(T_SQL_DATALINK, SQL_DATALINK);
commandSet.put(T_SQL_DATE, SQL_DATE);
commandSet.put(T_SQL_DECIMAL, SQL_DECIMAL);
commandSet.put(T_SQL_DOUBLE, SQL_DOUBLE);
commandSet.put(T_SQL_FLOAT, SQL_FLOAT);
commandSet.put(T_SQL_INTEGER, SQL_INTEGER);
commandSet.put(T_SQL_LONGNVARCHAR, SQL_LONGNVARCHAR);
commandSet.put(T_SQL_LONGVARBINARY, SQL_LONGVARBINARY);
commandSet.put(T_SQL_LONGVARCHAR, SQL_LONGVARCHAR);
commandSet.put(T_SQL_NCHAR, SQL_NCHAR);
commandSet.put(T_SQL_NCLOB, SQL_NCLOB);
commandSet.put(T_SQL_NUMERIC, SQL_NUMERIC);
commandSet.put(T_SQL_NVARCHAR, SQL_NVARCHAR);
commandSet.put(T_SQL_REAL, SQL_REAL);
commandSet.put(T_SQL_ROWID, SQL_ROWID);
commandSet.put(T_SQL_SMALLINT, SQL_SMALLINT);
commandSet.put(T_SQL_SQLXML, SQL_SQLXML);
commandSet.put(T_SQL_TIME, SQL_TIME);
commandSet.put(T_SQL_TIMESTAMP, SQL_TIMESTAMP);
commandSet.put(T_SQL_TINYINT, SQL_TINYINT);
commandSet.put(T_SQL_VARBINARY, SQL_VARBINARY);
commandSet.put(T_SQL_VARCHAR, SQL_VARCHAR);
commandSet.put(T_SQL_TSI_DAY, SQL_TSI_DAY);
commandSet.put(T_SQL_TSI_FRAC_SECOND, SQL_TSI_FRAC_SECOND);
commandSet.put(T_SQL_TSI_HOUR, SQL_TSI_HOUR);
commandSet.put(T_SQL_TSI_MINUTE, SQL_TSI_MINUTE);
commandSet.put(T_SQL_TSI_MONTH, SQL_TSI_MONTH);
commandSet.put(T_SQL_TSI_QUARTER, SQL_TSI_QUARTER);
commandSet.put(T_SQL_TSI_SECOND, SQL_TSI_SECOND);
commandSet.put(T_SQL_TSI_WEEK, SQL_TSI_WEEK);
commandSet.put(T_SQL_TSI_YEAR, SQL_TSI_YEAR);
commandSet.put(T_STATEMENT, STATEMENT);
commandSet.put(T_STYLE, STYLE);
commandSet.put(T_T_FACTOR, T);
commandSet.put(T_TEMP, TEMP);
commandSet.put(T_TEMPORARY, TEMPORARY);
commandSet.put(T_TEXT, TEXT);
commandSet.put(T_TIMESTAMPADD, TIMESTAMPADD);
commandSet.put(T_TIMESTAMPDIFF, TIMESTAMPDIFF);
commandSet.put(T_TO_CHAR, TO_CHAR);
commandSet.put(T_TODAY, TODAY);
commandSet.put(T_TOP, TOP);
commandSet.put(T_TRANSACTION, TRANSACTION);
commandSet.put(T_TYPE, TYPE);
commandSet.put(T_UNCOMMITTED, UNCOMMITTED);
commandSet.put(T_USAGE, USAGE);
commandSet.put(T_VIEW, VIEW);
commandSet.put(T_WORK, WORK);
commandSet.put(T_WRAPPER, WRAPPER);
commandSet.put(T_WRITE, WRITE);
commandSet.put(T_WRITE_DELAY, WRITE_DELAY);
commandSet.put(T_ZONE, ZONE);
//
commandSet.put(T_ACOS, ACOS);
commandSet.put(T_ASCII, ASCII);
commandSet.put(T_ASIN, ASIN);
commandSet.put(T_ATAN, ATAN);
commandSet.put(T_ATAN2, ATAN2);
commandSet.put(T_BITAND, BITAND);
commandSet.put(T_BITLENGTH, BITLENGTH);
commandSet.put(T_BITOR, BITOR);
commandSet.put(T_BITXOR, BITXOR);
commandSet.put(T_CASEWHEN, Tokens.CASEWHEN);
commandSet.put(T_CONCAT_WORD, CONCAT_WORD);
commandSet.put(T_COS, COS);
commandSet.put(T_COT, COT);
commandSet.put(T_DATEADD, DATEADD);
commandSet.put(T_DATEDIFF, DATEDIFF);
commandSet.put(T_DAY_NAME, DAY_NAME);
commandSet.put(T_DAY_OF_MONTH, DAY_OF_MONTH);
commandSet.put(T_DAY_OF_WEEK, DAY_OF_WEEK);
commandSet.put(T_DAY_OF_YEAR, DAY_OF_YEAR);
commandSet.put(T_DAYNAME, DAYNAME);
commandSet.put(T_DAYOFMONTH, DAYOFMONTH);
commandSet.put(T_DAYOFWEEK, DAYOFWEEK);
commandSet.put(T_DAYOFYEAR, DAYOFYEAR);
commandSet.put(T_DECODE, DECODE);
commandSet.put(T_DEGREES, DEGREES);
commandSet.put(T_DIFFERENCE, DIFFERENCE);
commandSet.put(T_DMOD, DMOD);
commandSet.put(T_GREATEST, GREATEST);
commandSet.put(T_HEXTORAW, HEXTORAW);
commandSet.put(T_IFNULL, Tokens.IFNULL);
commandSet.put(T_LCASE, LCASE);
commandSet.put(T_LEAST, LEAST);
commandSet.put(T_LOCATE, LOCATE);
commandSet.put(T_LOG, LOG);
commandSet.put(T_LOG10, LOG10);
commandSet.put(T_LTRIM, LTRIM);
commandSet.put(T_MONTH_NAME, MONTH_NAME);
commandSet.put(T_MONTHNAME, MONTHNAME);
commandSet.put(T_NAMES, Tokens.NAMES);
commandSet.put(T_NVL, Tokens.IFNULL);
commandSet.put(T_OCTETLENGTH, OCTETLENGTH);
commandSet.put(T_PI, PI);
commandSet.put(T_QUARTER, QUARTER);
commandSet.put(T_RADIANS, RADIANS);
commandSet.put(T_RAND, RAND);
commandSet.put(T_RAWTOHEX, RAWTOHEX);
commandSet.put(T_REGEXP_MATCHES, REGEXP_MATCHES);
commandSet.put(T_REPLACE, REPLACE);
commandSet.put(T_REVERSE, REVERSE);
commandSet.put(T_ROUND, ROUND);
commandSet.put(T_ROUNDMAGIC, ROUNDMAGIC);
commandSet.put(T_RTRIM, RTRIM);
commandSet.put(T_SECONDS_MIDNIGHT, SECONDS_MIDNIGHT);
commandSet.put(T_SIGN, SIGN);
commandSet.put(T_SIN, SIN);
commandSet.put(T_SOUNDEX, SOUNDEX);
commandSet.put(T_SPACE, SPACE);
commandSet.put(T_SUBSTR, SUBSTR);
commandSet.put(T_SYSDATE, SYSDATE);
commandSet.put(T_TAN, TAN);
commandSet.put(T_UCASE, UCASE);
commandSet.put(T_WEEK, WEEK);
commandSet.put(T_WEEK_OF_YEAR, WEEK_OF_YEAR);
//
commandSet.put(T_ISOLATION_LEVEL, ISOLATION_LEVEL);
commandSet.put(T_SESSION_ISOLATION_LEVEL, SESSION_ISOLATION_LEVEL);
commandSet.put(T_DATABASE_ISOLATION_LEVEL, DATABASE_ISOLATION_LEVEL);
commandSet.put(T_TRANSACTION_CONTROL, TRANSACTION_CONTROL);
commandSet.put(T_TIMEZONE, TIMEZONE);
commandSet.put(T_SESSION_TIMEZONE, SESSION_TIMEZONE);
commandSet.put(T_DATABASE_TIMEZONE, DATABASE_TIMEZONE);
commandSet.put(T_DATABASE_VERSION, DATABASE_VERSION);
//
commandSet.put(T_ASTERISK, Tokens.ASTERISK);
commandSet.put(T_CLOSEBRACKET, CLOSEBRACKET);
commandSet.put(T_COLON, Tokens.COLON);
commandSet.put(T_COMMA, Tokens.COMMA);
commandSet.put(T_CONCAT, Tokens.CONCAT);
commandSet.put(T_DIVIDE, Tokens.DIVIDE);
commandSet.put(T_EQUALS, Tokens.EQUALS);
commandSet.put(T_GREATER, Tokens.GREATER);
commandSet.put(T_GREATER_EQUALS, Tokens.GREATER_EQUALS);
commandSet.put(T_LEFTBRACKET, LEFTBRACKET);
commandSet.put(T_LESS, Tokens.LESS);
commandSet.put(T_LESS_EQUALS, Tokens.LESS_EQUALS);
commandSet.put(T_MINUS, Tokens.MINUS);
commandSet.put(T_NOT_EQUALS, Tokens.NOT_EQUALS);
commandSet.put(T_NOT_EQUALS_ALT, Tokens.NOT_EQUALS);
commandSet.put(T_OPENBRACKET, OPENBRACKET);
commandSet.put(T_PLUS, Tokens.PLUS);
commandSet.put(T_QUESTION, Tokens.QUESTION);
commandSet.put(T_RIGHTBRACKET, RIGHTBRACKET);
commandSet.put(T_SEMICOLON, SEMICOLON);
}
static int get(String token) {
int type = reservedKeys.get(token, -1);
if (type == -1) {
return commandSet.get(token, -1);
}
return type;
}
public static boolean isCoreKeyword(int token) {
return coreReservedWords.contains(token);
}
public static boolean isKeyword(String token) {
return reservedKeys.containsKey(token);
}
public static int getKeywordID(String token, int defaultValue) {
return reservedKeys.get(token, defaultValue);
}
public static int getNonKeywordID(String token, int defaultValue) {
return commandSet.get(token, defaultValue);
}
public static String getKeyword(int token) {
String key = (String) reservedKeys.getKey(token);
if (key != null) {
return key;
}
key = (String) commandSet.getKey(token);
return key;
}
private static final OrderedIntHashSet coreReservedWords;
static {
// minimal set of identifier not allowed as table / column / alias names
// these are in effect interpreted as reserved words used by HSQLDB
coreReservedWords = new OrderedIntHashSet(128);
short[] keyword = {
ADMIN, AS, AND, ALL, ANY, AT, AVG, BY, BETWEEN, BOTH, CALL, CASE,
CAST, CORRESPONDING, CONVERT, COUNT, COALESCE, CREATE, CROSS,
DISTINCT, DROP, ELSE, END, EVERY, EXISTS, EXCEPT, FOR, FROM, FULL,
GRANT, GROUP, HAVING, INTO, IS, IN, INTERSECT, JOIN, INNER, LEFT,
LEADING, LIKE, MAX, MIN, NATURAL, NULLIF, NOT, ON, ORDER, OR,
OUTER, PRIMARY, REFERENCES, RIGHT, SELECT, SET, SOME, STDDEV_POP,
STDDEV_SAMP, SUM, TABLE, THEN, TO, TRAILING, TRIGGER, UNION,
UNIQUE, USING, VALUES, VAR_POP, VAR_SAMP, WHEN, WHERE, WITH,
};
for (int i = 0; i < keyword.length; i++) {
coreReservedWords.add(keyword[i]);
}
}
public static final short[] SQL_INTERVAL_FIELD_CODES = new short[] {
Tokens.YEAR, Tokens.MONTH, Tokens.DAY, Tokens.HOUR, Tokens.MINUTE,
Tokens.SECOND
};
public static final String[] SQL_INTERVAL_FIELD_NAMES = new String[] {
Tokens.T_YEAR, Tokens.T_MONTH, Tokens.T_DAY, Tokens.T_HOUR,
Tokens.T_MINUTE, Tokens.T_SECOND
};
private static final IntKeyHashMap sqlTSILookup = new IntKeyHashMap(10);
static {
sqlTSILookup.put(SQL_TSI_DAY, T_SQL_TSI_DAY);
sqlTSILookup.put(SQL_TSI_FRAC_SECOND, T_SQL_TSI_FRAC_SECOND);
sqlTSILookup.put(SQL_TSI_HOUR, T_SQL_TSI_HOUR);
sqlTSILookup.put(SQL_TSI_MINUTE, T_SQL_TSI_MINUTE);
sqlTSILookup.put(SQL_TSI_MONTH, T_SQL_TSI_MONTH);
sqlTSILookup.put(SQL_TSI_QUARTER, T_SQL_TSI_QUARTER);
sqlTSILookup.put(SQL_TSI_SECOND, T_SQL_TSI_SECOND);
sqlTSILookup.put(SQL_TSI_WEEK, T_SQL_TSI_WEEK);
sqlTSILookup.put(SQL_TSI_YEAR, T_SQL_TSI_YEAR);
}
public static String getSQLTSIString(int token) {
return (String) sqlTSILookup.get(token);
}
}