lex.h 22.9 KB
Newer Older
1 2 3
#ifndef LEX_INCLUDED
#define LEX_INCLUDED

unknown's avatar
unknown committed
4
/* Copyright (C) 2000-2002 MySQL AB
5

unknown's avatar
unknown committed
6 7
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
unknown's avatar
unknown committed
8
   the Free Software Foundation; version 2 of the License.
9

unknown's avatar
unknown committed
10 11 12 13
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
14

unknown's avatar
unknown committed
15 16 17 18 19 20 21 22 23
   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */


/* This file includes all reserved words and functions */

#include "lex_symbol.h"

unknown's avatar
SCRUM  
unknown committed
24 25 26
SYM_GROUP sym_group_common= {"", ""};
SYM_GROUP sym_group_geom= {"Spatial extentions", "HAVE_SPATIAL"};
SYM_GROUP sym_group_rtree= {"RTree keys", "HAVE_RTREE_KEYS"};
unknown's avatar
unknown committed
27

28
/* We don't want to include sql_yacc.h into gen_lex_hash */
unknown's avatar
unknown committed
29
#ifdef NO_YACC_SYMBOLS
unknown's avatar
unknown committed
30
#define SYM_OR_NULL(A) 0
unknown's avatar
unknown committed
31
#else
unknown's avatar
unknown committed
32 33 34
#define SYM_OR_NULL(A) A
#endif

35
#define SYM(A) SYM_OR_NULL(A),0,&sym_group_common
unknown's avatar
unknown committed
36 37

/*
unknown's avatar
unknown committed
38
  Symbols are broken into separated arrays to allow field names with
unknown's avatar
unknown committed
39 40
  same name as functions.
  These are kept sorted for human lookup (the symbols are hashed).
41 42 43 44

  NOTE! The symbol tables should be the same regardless of what features
  are compiled into the server. Don't add ifdef'ed symbols to the
  lists
unknown's avatar
unknown committed
45 46 47
*/

static SYMBOL symbols[] = {
48
  { "&&",		SYM(AND_AND_SYM)},
unknown's avatar
unknown committed
49 50 51 52 53 54 55 56 57 58
  { "<",		SYM(LT)},
  { "<=",		SYM(LE)},
  { "<>",		SYM(NE)},
  { "!=",		SYM(NE)},
  { "=",		SYM(EQ)},
  { ">",		SYM(GT_SYM)},
  { ">=",		SYM(GE)},
  { "<<",		SYM(SHIFT_LEFT)},
  { ">>",		SYM(SHIFT_RIGHT)},
  { "<=>",		SYM(EQUAL_SYM)},
unknown's avatar
unknown committed
59
  { "ACCESSIBLE",	SYM(ACCESSIBLE_SYM)},
unknown's avatar
unknown committed
60 61 62 63 64 65
  { "ACTION",		SYM(ACTION)},
  { "ADD",		SYM(ADD)},
  { "AFTER",		SYM(AFTER_SYM)},
  { "AGAINST",          SYM(AGAINST)},
  { "AGGREGATE",	SYM(AGGREGATE_SYM)},
  { "ALL",		SYM(ALL)},
66
  { "ALGORITHM",	SYM(ALGORITHM_SYM)},
unknown's avatar
unknown committed
67 68
  { "ALTER",		SYM(ALTER)},
  { "ANALYZE",		SYM(ANALYZE_SYM)},
unknown's avatar
unknown committed
69
  { "AND",		SYM(AND_SYM)},
unknown's avatar
unknown committed
70 71 72 73
  { "ANY",              SYM(ANY_SYM)},
  { "AS",		SYM(AS)},
  { "ASC",		SYM(ASC)},
  { "ASCII",		SYM(ASCII_SYM)},
74
  { "ASENSITIVE",       SYM(ASENSITIVE_SYM)},
75
  { "AT",		SYM(AT_SYM)},
unknown's avatar
unknown committed
76
  { "AUTHORS",	        SYM(AUTHORS_SYM)},
unknown's avatar
unknown committed
77
  { "AUTO_INCREMENT",	SYM(AUTO_INC)},
unknown's avatar
unknown committed
78
  { "AUTOEXTEND_SIZE",	SYM(AUTOEXTEND_SIZE_SYM)},
unknown's avatar
unknown committed
79 80 81 82 83 84 85 86 87 88 89
  { "AVG",		SYM(AVG_SYM)},
  { "AVG_ROW_LENGTH",	SYM(AVG_ROW_LENGTH)},
  { "BACKUP",	        SYM(BACKUP_SYM)},
  { "BEFORE",	        SYM(BEFORE_SYM)},
  { "BEGIN",	        SYM(BEGIN_SYM)},
  { "BETWEEN",		SYM(BETWEEN_SYM)},
  { "BIGINT",		SYM(BIGINT)},
  { "BINARY",		SYM(BINARY)},
  { "BINLOG",		SYM(BINLOG_SYM)},
  { "BIT",		SYM(BIT_SYM)},
  { "BLOB",		SYM(BLOB_SYM)},
unknown's avatar
unknown committed
90
  { "BLOCK",  SYM(BLOCK_SYM)},
unknown's avatar
unknown committed
91 92 93 94 95 96 97
  { "BOOL",		SYM(BOOL_SYM)},
  { "BOOLEAN",		SYM(BOOLEAN_SYM)},
  { "BOTH",		SYM(BOTH)},
  { "BTREE",		SYM(BTREE_SYM)},
  { "BY",		SYM(BY)},
  { "BYTE",		SYM(BYTE_SYM)},
  { "CACHE",		SYM(CACHE_SYM)},
98
  { "CALL",             SYM(CALL_SYM)},
unknown's avatar
unknown committed
99
  { "CASCADE",		SYM(CASCADE)},
100
  { "CASCADED",         SYM(CASCADED)},
unknown's avatar
unknown committed
101
  { "CASE",		SYM(CASE_SYM)},
Marc Alff's avatar
Marc Alff committed
102
  { "CATALOG_NAME",     SYM(CATALOG_NAME_SYM)},
unknown's avatar
unknown committed
103
  { "CHAIN",		SYM(CHAIN_SYM)},
unknown's avatar
unknown committed
104 105 106 107 108 109 110 111
  { "CHANGE",		SYM(CHANGE)},
  { "CHANGED",		SYM(CHANGED)},
  { "CHAR",		SYM(CHAR_SYM)},
  { "CHARACTER",	SYM(CHAR_SYM)},
  { "CHARSET",		SYM(CHARSET)},
  { "CHECK",		SYM(CHECK_SYM)},
  { "CHECKSUM",		SYM(CHECKSUM_SYM)},
  { "CIPHER",		SYM(CIPHER_SYM)},
Marc Alff's avatar
Marc Alff committed
112
  { "CLASS_ORIGIN",     SYM(CLASS_ORIGIN_SYM)},
unknown's avatar
unknown committed
113 114
  { "CLIENT",		SYM(CLIENT_SYM)},
  { "CLOSE",		SYM(CLOSE_SYM)},
unknown's avatar
unknown committed
115
  { "COALESCE",		SYM(COALESCE)},
unknown's avatar
unknown committed
116
  { "CODE",             SYM(CODE_SYM)},
unknown's avatar
unknown committed
117 118 119
  { "COLLATE",		SYM(COLLATE_SYM)},
  { "COLLATION",	SYM(COLLATION_SYM)},
  { "COLUMN",		SYM(COLUMN_SYM)},
Marc Alff's avatar
Marc Alff committed
120
  { "COLUMN_NAME",      SYM(COLUMN_NAME_SYM)},
unknown's avatar
unknown committed
121 122 123 124
  { "COLUMNS",		SYM(COLUMNS)},
  { "COMMENT",		SYM(COMMENT_SYM)},
  { "COMMIT",		SYM(COMMIT_SYM)},
  { "COMMITTED",	SYM(COMMITTED_SYM)},
125
  { "COMPACT",		SYM(COMPACT_SYM)},
126
  { "COMPLETION",	SYM(COMPLETION_SYM)},
unknown's avatar
unknown committed
127 128
  { "COMPRESSED",	SYM(COMPRESSED_SYM)},
  { "CONCURRENT",	SYM(CONCURRENT)},
129 130
  { "CONDITION",        SYM(CONDITION_SYM)},
  { "CONNECTION",       SYM(CONNECTION_SYM)},
131
  { "CONSISTENT",	SYM(CONSISTENT_SYM)},
unknown's avatar
unknown committed
132
  { "CONSTRAINT",	SYM(CONSTRAINT)},
Marc Alff's avatar
Marc Alff committed
133 134 135
  { "CONSTRAINT_CATALOG", SYM(CONSTRAINT_CATALOG_SYM)},
  { "CONSTRAINT_NAME",  SYM(CONSTRAINT_NAME_SYM)},
  { "CONSTRAINT_SCHEMA", SYM(CONSTRAINT_SCHEMA_SYM)},
136
  { "CONTAINS",         SYM(CONTAINS_SYM)},
unknown's avatar
unknown committed
137
  { "CONTEXT",    SYM(CONTEXT_SYM)},
138
  { "CONTINUE",         SYM(CONTINUE_SYM)},
139
  { "CONTRIBUTORS",     SYM(CONTRIBUTORS_SYM)},
140
  { "CONVERT",		SYM(CONVERT_SYM)},
unknown's avatar
unknown committed
141
  { "CPU",        SYM(CPU_SYM)},
unknown's avatar
unknown committed
142 143 144 145 146 147
  { "CREATE",		SYM(CREATE)},
  { "CROSS",		SYM(CROSS)},
  { "CUBE",		SYM(CUBE_SYM)},
  { "CURRENT_DATE",	SYM(CURDATE)},
  { "CURRENT_TIME",	SYM(CURTIME)},
  { "CURRENT_TIMESTAMP", SYM(NOW_SYM)},
148
  { "CURRENT_USER",	SYM(CURRENT_USER)},
149
  { "CURSOR",           SYM(CURSOR_SYM)},
Marc Alff's avatar
Marc Alff committed
150
  { "CURSOR_NAME",      SYM(CURSOR_NAME_SYM)},
unknown's avatar
unknown committed
151 152 153
  { "DATA",		SYM(DATA_SYM)},
  { "DATABASE",		SYM(DATABASE)},
  { "DATABASES",	SYM(DATABASES)},
unknown's avatar
unknown committed
154
  { "DATAFILE", 	SYM(DATAFILE_SYM)},
unknown's avatar
unknown committed
155 156 157 158 159 160 161
  { "DATE",		SYM(DATE_SYM)},
  { "DATETIME",		SYM(DATETIME)},
  { "DAY",		SYM(DAY_SYM)},
  { "DAY_HOUR",		SYM(DAY_HOUR_SYM)},
  { "DAY_MICROSECOND",	SYM(DAY_MICROSECOND_SYM)},
  { "DAY_MINUTE",	SYM(DAY_MINUTE_SYM)},
  { "DAY_SECOND",	SYM(DAY_SECOND_SYM)},
unknown's avatar
unknown committed
162
  { "DEALLOCATE",       SYM(DEALLOCATE_SYM)},     
unknown's avatar
unknown committed
163 164
  { "DEC",		SYM(DECIMAL_SYM)},
  { "DECIMAL",		SYM(DECIMAL_SYM)},
165
  { "DECLARE",          SYM(DECLARE_SYM)},
unknown's avatar
unknown committed
166
  { "DEFAULT",		SYM(DEFAULT)},
167
  { "DEFINER",          SYM(DEFINER_SYM)},
unknown's avatar
unknown committed
168 169 170 171 172 173
  { "DELAYED",		SYM(DELAYED_SYM)},
  { "DELAY_KEY_WRITE",	SYM(DELAY_KEY_WRITE_SYM)},
  { "DELETE",		SYM(DELETE_SYM)},
  { "DESC",		SYM(DESC)},
  { "DESCRIBE",		SYM(DESCRIBE)},
  { "DES_KEY_FILE",	SYM(DES_KEY_FILE)},
174
  { "DETERMINISTIC",    SYM(DETERMINISTIC_SYM)},
unknown's avatar
unknown committed
175 176 177
  { "DIRECTORY",	SYM(DIRECTORY_SYM)},
  { "DISABLE",		SYM(DISABLE_SYM)},
  { "DISCARD",		SYM(DISCARD)},
unknown's avatar
unknown committed
178
  { "DISK",		SYM(DISK_SYM)},
unknown's avatar
unknown committed
179 180 181 182 183 184 185 186 187 188
  { "DISTINCT",		SYM(DISTINCT)},
  { "DISTINCTROW",	SYM(DISTINCT)},	/* Access likes this */
  { "DIV",		SYM(DIV_SYM)},
  { "DO",		SYM(DO_SYM)},
  { "DOUBLE",		SYM(DOUBLE_SYM)},
  { "DROP",		SYM(DROP)},
  { "DUAL",		SYM(DUAL_SYM)},
  { "DUMPFILE",		SYM(DUMPFILE)},
  { "DUPLICATE",	SYM(DUPLICATE_SYM)},
  { "DYNAMIC",		SYM(DYNAMIC_SYM)},
189
  { "EACH",             SYM(EACH_SYM)},
unknown's avatar
unknown committed
190
  { "ELSE",             SYM(ELSE)},
191
  { "ELSEIF",           SYM(ELSEIF_SYM)},
unknown's avatar
unknown committed
192 193 194
  { "ENABLE",		SYM(ENABLE_SYM)},
  { "ENCLOSED",		SYM(ENCLOSED)},
  { "END",		SYM(END)},
195
  { "ENDS",		SYM(ENDS_SYM)},
unknown's avatar
unknown committed
196 197 198
  { "ENGINE",		SYM(ENGINE_SYM)},
  { "ENGINES",		SYM(ENGINES_SYM)},
  { "ENUM",		SYM(ENUM)},
199
  { "ERROR",            SYM(ERROR_SYM)},
unknown's avatar
unknown committed
200 201 202
  { "ERRORS",		SYM(ERRORS)},
  { "ESCAPE",		SYM(ESCAPE_SYM)},
  { "ESCAPED",		SYM(ESCAPED)},
203
  { "EVENT",		SYM(EVENT_SYM)},
unknown's avatar
unknown committed
204
  { "EVENTS",		SYM(EVENTS_SYM)},
205
  { "EVERY",		SYM(EVERY_SYM)},
unknown's avatar
unknown committed
206 207
  { "EXECUTE",		SYM(EXECUTE_SYM)},
  { "EXISTS",		SYM(EXISTS)},
208
  { "EXIT",             SYM(EXIT_SYM)},
unknown's avatar
unknown committed
209 210 211
  { "EXPANSION",	SYM(EXPANSION_SYM)},
  { "EXPLAIN",		SYM(DESCRIBE)},
  { "EXTENDED",		SYM(EXTENDED_SYM)},
unknown's avatar
unknown committed
212
  { "EXTENT_SIZE",	SYM(EXTENT_SIZE_SYM)},
unknown's avatar
unknown committed
213 214
  { "FALSE",		SYM(FALSE_SYM)},
  { "FAST",		SYM(FAST_SYM)},
unknown's avatar
unknown committed
215
  { "FAULTS",  SYM(FAULTS_SYM)},
216
  { "FETCH",            SYM(FETCH_SYM)},
unknown's avatar
unknown committed
217 218 219 220 221 222 223 224 225 226 227
  { "FIELDS",		SYM(COLUMNS)},
  { "FILE",		SYM(FILE_SYM)},
  { "FIRST",		SYM(FIRST_SYM)},
  { "FIXED",		SYM(FIXED_SYM)},
  { "FLOAT",		SYM(FLOAT_SYM)},
  { "FLOAT4",		SYM(FLOAT_SYM)},
  { "FLOAT8",		SYM(DOUBLE_SYM)},
  { "FLUSH",		SYM(FLUSH_SYM)},
  { "FOR",		SYM(FOR_SYM)},
  { "FORCE",		SYM(FORCE_SYM)},
  { "FOREIGN",		SYM(FOREIGN)},
228 229
  { "FOUND",            SYM(FOUND_SYM)},
  { "FRAC_SECOND",      SYM(FRAC_SECOND_SYM)},
unknown's avatar
unknown committed
230 231 232
  { "FROM",		SYM(FROM)},
  { "FULL",		SYM(FULL)},
  { "FULLTEXT",		SYM(FULLTEXT_SYM)},
233
  { "FUNCTION",		SYM(FUNCTION_SYM)},
234
  { "GENERAL",          SYM(GENERAL)},
unknown's avatar
unknown committed
235 236 237 238 239 240
  { "GEOMETRY",		SYM(GEOMETRY_SYM)},
  { "GEOMETRYCOLLECTION",SYM(GEOMETRYCOLLECTION)},
  { "GET_FORMAT",       SYM(GET_FORMAT)},
  { "GLOBAL",		SYM(GLOBAL_SYM)},
  { "GRANT",		SYM(GRANT)},
  { "GRANTS",	        SYM(GRANTS)},
241
  { "GROUP",		SYM(GROUP_SYM)},
unknown's avatar
unknown committed
242 243 244 245 246
  { "HANDLER",		SYM(HANDLER_SYM)},
  { "HASH",		SYM(HASH_SYM)},
  { "HAVING",		SYM(HAVING)},
  { "HELP",		SYM(HELP_SYM)},
  { "HIGH_PRIORITY",	SYM(HIGH_PRIORITY)},
unknown's avatar
unknown committed
247
  { "HOST",		SYM(HOST_SYM)},
unknown's avatar
unknown committed
248 249 250 251 252 253 254 255
  { "HOSTS",		SYM(HOSTS_SYM)},
  { "HOUR",		SYM(HOUR_SYM)},
  { "HOUR_MICROSECOND",	SYM(HOUR_MICROSECOND_SYM)},
  { "HOUR_MINUTE",	SYM(HOUR_MINUTE_SYM)},
  { "HOUR_SECOND",	SYM(HOUR_SECOND_SYM)},
  { "IDENTIFIED",	SYM(IDENTIFIED_SYM)},
  { "IF",		SYM(IF)},
  { "IGNORE",		SYM(IGNORE_SYM)},
Andrei Elkin's avatar
Andrei Elkin committed
256
  { "IGNORE_SERVER_IDS", SYM(IGNORE_SERVER_IDS_SYM)},
unknown's avatar
unknown committed
257 258
  { "IMPORT",		SYM(IMPORT)},
  { "IN",		SYM(IN_SYM)},
unknown's avatar
unknown committed
259
  { "INDEX",		SYM(INDEX_SYM)},
unknown's avatar
unknown committed
260 261
  { "INDEXES",		SYM(INDEXES)},
  { "INFILE",		SYM(INFILE)},
unknown's avatar
unknown committed
262
  { "INITIAL_SIZE",	SYM(INITIAL_SIZE_SYM)},
unknown's avatar
unknown committed
263
  { "INNER",		SYM(INNER_SYM)},
264 265
  { "INOUT",            SYM(INOUT_SYM)},
  { "INSENSITIVE",      SYM(INSENSITIVE_SYM)},
unknown's avatar
unknown committed
266 267
  { "INSERT",		SYM(INSERT)},
  { "INSERT_METHOD",    SYM(INSERT_METHOD)},
268
  { "INSTALL",          SYM(INSTALL_SYM)},
unknown's avatar
unknown committed
269 270 271 272 273 274 275 276 277
  { "INT",		SYM(INT_SYM)},
  { "INT1",		SYM(TINYINT)},
  { "INT2",		SYM(SMALLINT)},
  { "INT3",		SYM(MEDIUMINT)},
  { "INT4",		SYM(INT_SYM)},
  { "INT8",		SYM(BIGINT)},
  { "INTEGER",		SYM(INT_SYM)},
  { "INTERVAL",		SYM(INTERVAL_SYM)},
  { "INTO",		SYM(INTO)},
unknown's avatar
unknown committed
278
  { "IO",     SYM(IO_SYM)},
unknown's avatar
unknown committed
279
  { "IO_THREAD",        SYM(RELAY_THREAD)},
unknown's avatar
unknown committed
280
  { "IPC",    SYM(IPC_SYM)},
unknown's avatar
unknown committed
281 282 283
  { "IS",		SYM(IS)},
  { "ISOLATION",	SYM(ISOLATION)},
  { "ISSUER",		SYM(ISSUER_SYM)},
284 285
  { "ITERATE",          SYM(ITERATE_SYM)},
  { "INVOKER",          SYM(INVOKER_SYM)},
unknown's avatar
unknown committed
286 287 288
  { "JOIN",		SYM(JOIN_SYM)},
  { "KEY",		SYM(KEY_SYM)},
  { "KEYS",		SYM(KEYS)},
289
  { "KEY_BLOCK_SIZE",	SYM(KEY_BLOCK_SIZE)},
unknown's avatar
unknown committed
290
  { "KILL",		SYM(KILL_SYM)},
291
  { "LANGUAGE",         SYM(LANGUAGE_SYM)},
unknown's avatar
unknown committed
292 293
  { "LAST",		SYM(LAST_SYM)},
  { "LEADING",		SYM(LEADING)},
294
  { "LEAVE",            SYM(LEAVE_SYM)},
unknown's avatar
unknown committed
295 296
  { "LEAVES",		SYM(LEAVES)},
  { "LEFT",		SYM(LEFT)},
297
  { "LESS",             SYM(LESS_SYM)},
unknown's avatar
unknown committed
298 299 300
  { "LEVEL",		SYM(LEVEL_SYM)},
  { "LIKE",		SYM(LIKE)},
  { "LIMIT",		SYM(LIMIT)},
301
  { "LINEAR",		SYM(LINEAR_SYM)},
unknown's avatar
unknown committed
302 303
  { "LINES",		SYM(LINES)},
  { "LINESTRING",	SYM(LINESTRING)},
304
  { "LIST",             SYM(LIST_SYM)},
unknown's avatar
unknown committed
305 306 307 308 309 310
  { "LOAD",		SYM(LOAD)},
  { "LOCAL",		SYM(LOCAL_SYM)},
  { "LOCALTIME",	SYM(NOW_SYM)},
  { "LOCALTIMESTAMP",	SYM(NOW_SYM)},
  { "LOCK",		SYM(LOCK_SYM)},
  { "LOCKS",		SYM(LOCKS_SYM)},
unknown's avatar
unknown committed
311
  { "LOGFILE",		SYM(LOGFILE_SYM)},
unknown's avatar
unknown committed
312 313 314 315
  { "LOGS",		SYM(LOGS_SYM)},
  { "LONG",		SYM(LONG_SYM)},
  { "LONGBLOB",		SYM(LONGBLOB)},
  { "LONGTEXT",		SYM(LONGTEXT)},
316
  { "LOOP",             SYM(LOOP_SYM)},
unknown's avatar
unknown committed
317 318 319 320 321 322 323 324 325 326 327 328 329 330 331
  { "LOW_PRIORITY",	SYM(LOW_PRIORITY)},
  { "MASTER",           SYM(MASTER_SYM)},
  { "MASTER_CONNECT_RETRY",           SYM(MASTER_CONNECT_RETRY_SYM)},
  { "MASTER_HOST",           SYM(MASTER_HOST_SYM)},
  { "MASTER_LOG_FILE",           SYM(MASTER_LOG_FILE_SYM)},
  { "MASTER_LOG_POS",           SYM(MASTER_LOG_POS_SYM)},
  { "MASTER_PASSWORD",           SYM(MASTER_PASSWORD_SYM)},
  { "MASTER_PORT",           SYM(MASTER_PORT_SYM)},
  { "MASTER_SERVER_ID",           SYM(MASTER_SERVER_ID_SYM)},
  { "MASTER_SSL",       SYM(MASTER_SSL_SYM)},
  { "MASTER_SSL_CA",    SYM(MASTER_SSL_CA_SYM)},
  { "MASTER_SSL_CAPATH",SYM(MASTER_SSL_CAPATH_SYM)},
  { "MASTER_SSL_CERT",  SYM(MASTER_SSL_CERT_SYM)},
  { "MASTER_SSL_CIPHER",SYM(MASTER_SSL_CIPHER_SYM)},
  { "MASTER_SSL_KEY",   SYM(MASTER_SSL_KEY_SYM)},
332
  { "MASTER_SSL_VERIFY_SERVER_CERT", SYM(MASTER_SSL_VERIFY_SERVER_CERT_SYM)},
unknown's avatar
unknown committed
333
  { "MASTER_USER",           SYM(MASTER_USER_SYM)},
Andrei Elkin's avatar
Andrei Elkin committed
334
  { "MASTER_HEARTBEAT_PERIOD", SYM(MASTER_HEARTBEAT_PERIOD_SYM)},
unknown's avatar
unknown committed
335 336 337 338
  { "MATCH",		SYM(MATCH)},
  { "MAX_CONNECTIONS_PER_HOUR", SYM(MAX_CONNECTIONS_PER_HOUR)},
  { "MAX_QUERIES_PER_HOUR", SYM(MAX_QUERIES_PER_HOUR)},
  { "MAX_ROWS",		SYM(MAX_ROWS)},
unknown's avatar
unknown committed
339
  { "MAX_SIZE",		SYM(MAX_SIZE_SYM)},
unknown's avatar
unknown committed
340
  { "MAX_UPDATES_PER_HOUR", SYM(MAX_UPDATES_PER_HOUR)},
341
  { "MAX_USER_CONNECTIONS", SYM(MAX_USER_CONNECTIONS_SYM)},
342
  { "MAXVALUE",         SYM(MAX_VALUE_SYM)},
unknown's avatar
unknown committed
343 344 345 346
  { "MEDIUM",		SYM(MEDIUM_SYM)},
  { "MEDIUMBLOB",	SYM(MEDIUMBLOB)},
  { "MEDIUMINT",	SYM(MEDIUMINT)},
  { "MEDIUMTEXT",	SYM(MEDIUMTEXT)},
unknown's avatar
unknown committed
347
  { "MEMORY",		SYM(MEMORY_SYM)},
348
  { "MERGE",		SYM(MERGE_SYM)},
Marc Alff's avatar
Marc Alff committed
349
  { "MESSAGE_TEXT",     SYM(MESSAGE_TEXT_SYM)},
unknown's avatar
unknown committed
350 351
  { "MICROSECOND",	SYM(MICROSECOND_SYM)},
  { "MIDDLEINT",	SYM(MEDIUMINT)},	/* For powerbuilder */
352
  { "MIGRATE",          SYM(MIGRATE_SYM)},
unknown's avatar
unknown committed
353 354 355 356 357 358
  { "MINUTE",		SYM(MINUTE_SYM)},
  { "MINUTE_MICROSECOND", SYM(MINUTE_MICROSECOND_SYM)},
  { "MINUTE_SECOND",	SYM(MINUTE_SECOND_SYM)},
  { "MIN_ROWS",		SYM(MIN_ROWS)},
  { "MOD",		SYM(MOD_SYM)},
  { "MODE",		SYM(MODE_SYM)},
359
  { "MODIFIES",		SYM(MODIFIES_SYM)},
unknown's avatar
unknown committed
360 361 362 363 364
  { "MODIFY",		SYM(MODIFY_SYM)},
  { "MONTH",		SYM(MONTH_SYM)},
  { "MULTILINESTRING",	SYM(MULTILINESTRING)},
  { "MULTIPOINT",	SYM(MULTIPOINT)},
  { "MULTIPOLYGON",	SYM(MULTIPOLYGON)},
unknown's avatar
unknown committed
365
  { "MUTEX",  SYM(MUTEX_SYM)},
Marc Alff's avatar
Marc Alff committed
366
  { "MYSQL_ERRNO",      SYM(MYSQL_ERRNO_SYM)},
367
  { "NAME",             SYM(NAME_SYM)},
unknown's avatar
unknown committed
368 369 370
  { "NAMES",		SYM(NAMES_SYM)},
  { "NATIONAL",		SYM(NATIONAL_SYM)},
  { "NATURAL",		SYM(NATURAL)},
unknown's avatar
unknown committed
371 372
  { "NDB",              SYM(NDBCLUSTER_SYM)},
  { "NDBCLUSTER",       SYM(NDBCLUSTER_SYM)},
unknown's avatar
unknown committed
373 374 375 376
  { "NCHAR",		SYM(NCHAR_SYM)},
  { "NEW",              SYM(NEW_SYM)},
  { "NEXT",		SYM(NEXT_SYM)},
  { "NO",		SYM(NO_SYM)},
unknown's avatar
unknown committed
377 378
  { "NO_WAIT",		SYM(NO_WAIT_SYM)},
  { "NODEGROUP",	SYM(NODEGROUP_SYM)},
unknown's avatar
unknown committed
379
  { "NONE",		SYM(NONE_SYM)},
380
  { "NOT",		SYM(NOT_SYM)},
unknown's avatar
unknown committed
381 382 383 384 385 386 387
  { "NO_WRITE_TO_BINLOG",  SYM(NO_WRITE_TO_BINLOG)},
  { "NULL",		SYM(NULL_SYM)},
  { "NUMERIC",		SYM(NUMERIC_SYM)},
  { "NVARCHAR",		SYM(NVARCHAR_SYM)},
  { "OFFSET",		SYM(OFFSET_SYM)},
  { "OLD_PASSWORD",	SYM(OLD_PASSWORD)},
  { "ON",		SYM(ON)},
388
  { "ONE",              SYM(ONE_SYM)},
389
  { "ONE_SHOT",		SYM(ONE_SHOT_SYM)},
unknown's avatar
unknown committed
390 391
  { "OPEN",		SYM(OPEN_SYM)},
  { "OPTIMIZE",		SYM(OPTIMIZE)},
unknown's avatar
unknown committed
392
  { "OPTIONS",		SYM(OPTIONS_SYM)},
unknown's avatar
unknown committed
393 394
  { "OPTION",		SYM(OPTION)},
  { "OPTIONALLY",	SYM(OPTIONALLY)},
unknown's avatar
unknown committed
395
  { "OR",		SYM(OR_SYM)},
unknown's avatar
unknown committed
396
  { "ORDER",		SYM(ORDER_SYM)},
397
  { "OUT",              SYM(OUT_SYM)},
unknown's avatar
unknown committed
398 399
  { "OUTER",		SYM(OUTER)},
  { "OUTFILE",		SYM(OUTFILE)},
unknown's avatar
unknown committed
400
  { "OWNER",		SYM(OWNER_SYM)},
unknown's avatar
unknown committed
401
  { "PACK_KEYS",	SYM(PACK_KEYS_SYM)},
402
  { "PARSER",           SYM(PARSER_SYM)},
403
  { "PAGE",	        SYM(PAGE_SYM)},
unknown's avatar
unknown committed
404
  { "PARTIAL",		SYM(PARTIAL)},
405
  { "PARTITION",        SYM(PARTITION_SYM)},
unknown's avatar
unknown committed
406
  { "PARTITIONING",     SYM(PARTITIONING_SYM)},
407
  { "PARTITIONS",       SYM(PARTITIONS_SYM)},
unknown's avatar
unknown committed
408
  { "PASSWORD",		SYM(PASSWORD)},
409
  { "PHASE",            SYM(PHASE_SYM)},
410
  { "PLUGIN",           SYM(PLUGIN_SYM)},
411
  { "PLUGINS",          SYM(PLUGINS_SYM)},
unknown's avatar
unknown committed
412 413
  { "POINT",		SYM(POINT_SYM)},
  { "POLYGON",		SYM(POLYGON)},
unknown's avatar
unknown committed
414
  { "PORT",		SYM(PORT_SYM)},
unknown's avatar
unknown committed
415
  { "PRECISION",	SYM(PRECISION)},
unknown's avatar
unknown committed
416
  { "PREPARE",          SYM(PREPARE_SYM)},
417
  { "PRESERVE",		SYM(PRESERVE_SYM)},
unknown's avatar
unknown committed
418 419 420 421 422 423
  { "PREV",		SYM(PREV_SYM)},
  { "PRIMARY",		SYM(PRIMARY_SYM)},
  { "PRIVILEGES",	SYM(PRIVILEGES)},
  { "PROCEDURE",	SYM(PROCEDURE)},
  { "PROCESS"	,	SYM(PROCESS)},
  { "PROCESSLIST",	SYM(PROCESSLIST_SYM)},
unknown's avatar
unknown committed
424 425
  { "PROFILE",    SYM(PROFILE_SYM)},
  { "PROFILES",   SYM(PROFILES_SYM)},
unknown's avatar
unknown committed
426
  { "PURGE",		SYM(PURGE)},
427
  { "QUARTER",          SYM(QUARTER_SYM)},
unknown's avatar
unknown committed
428 429
  { "QUERY",		SYM(QUERY_SYM)},
  { "QUICK",	        SYM(QUICK)},
430
  { "RANGE",            SYM(RANGE_SYM)},
unknown's avatar
unknown committed
431
  { "READ",		SYM(READ_SYM)},
unknown's avatar
unknown committed
432 433
  { "READ_ONLY",	SYM(READ_ONLY_SYM)},
  { "READ_WRITE",	SYM(READ_WRITE_SYM)},
434
  { "READS",		SYM(READS_SYM)},
unknown's avatar
unknown committed
435
  { "REAL",		SYM(REAL)},
unknown's avatar
unknown committed
436
  { "REBUILD",		SYM(REBUILD_SYM)},
437
  { "RECOVER",          SYM(RECOVER_SYM)},
unknown's avatar
unknown committed
438 439
  { "REDO_BUFFER_SIZE",	SYM(REDO_BUFFER_SIZE_SYM)},
  { "REDOFILE",         SYM(REDOFILE_SYM)},
440
  { "REDUNDANT",	SYM(REDUNDANT_SYM)},
unknown's avatar
unknown committed
441 442
  { "REFERENCES",	SYM(REFERENCES)},
  { "REGEXP",		SYM(REGEXP)},
443
  { "RELAY",            SYM(RELAY)},
444
  { "RELAYLOG",         SYM(RELAYLOG_SYM)},
unknown's avatar
unknown committed
445 446 447
  { "RELAY_LOG_FILE",   SYM(RELAY_LOG_FILE_SYM)},
  { "RELAY_LOG_POS",    SYM(RELAY_LOG_POS_SYM)},
  { "RELAY_THREAD",     SYM(RELAY_THREAD)},
unknown's avatar
unknown committed
448
  { "RELEASE",		SYM(RELEASE_SYM)},
unknown's avatar
unknown committed
449
  { "RELOAD",		SYM(RELOAD)},
unknown's avatar
unknown committed
450
  { "REMOVE",		SYM(REMOVE_SYM)},
unknown's avatar
unknown committed
451
  { "RENAME",		SYM(RENAME)},
unknown's avatar
unknown committed
452
  { "REORGANIZE",	SYM(REORGANIZE_SYM)},
unknown's avatar
unknown committed
453 454 455 456
  { "REPAIR",		SYM(REPAIR)},
  { "REPEATABLE",	SYM(REPEATABLE_SYM)},
  { "REPLACE",		SYM(REPLACE)},
  { "REPLICATION",	SYM(REPLICATION)},
457
  { "REPEAT",           SYM(REPEAT_SYM)},
unknown's avatar
unknown committed
458 459
  { "REQUIRE",	        SYM(REQUIRE_SYM)},
  { "RESET",		SYM(RESET_SYM)},
Marc Alff's avatar
Marc Alff committed
460
  { "RESIGNAL",         SYM(RESIGNAL_SYM)},
unknown's avatar
unknown committed
461 462
  { "RESTORE",		SYM(RESTORE_SYM)},
  { "RESTRICT",		SYM(RESTRICT)},
463
  { "RESUME",           SYM(RESUME_SYM)},
464 465
  { "RETURN",           SYM(RETURN_SYM)},
  { "RETURNS",		SYM(RETURNS_SYM)},
unknown's avatar
unknown committed
466 467 468 469 470
  { "REVOKE",		SYM(REVOKE)},
  { "RIGHT",		SYM(RIGHT)},
  { "RLIKE",		SYM(REGEXP)},	/* Like in mSQL2 */
  { "ROLLBACK",		SYM(ROLLBACK_SYM)},
  { "ROLLUP",		SYM(ROLLUP_SYM)},
471
  { "ROUTINE",		SYM(ROUTINE_SYM)},
unknown's avatar
unknown committed
472 473 474 475 476
  { "ROW",		SYM(ROW_SYM)},
  { "ROWS",		SYM(ROWS_SYM)},
  { "ROW_FORMAT",	SYM(ROW_FORMAT_SYM)},
  { "RTREE",		SYM(RTREE_SYM)},
  { "SAVEPOINT",	SYM(SAVEPOINT_SYM)},
477
  { "SCHEDULE",		SYM(SCHEDULE_SYM)},
478
  { "SCHEMA",		SYM(DATABASE)},
Marc Alff's avatar
Marc Alff committed
479
  { "SCHEMA_NAME",      SYM(SCHEMA_NAME_SYM)},
480
  { "SCHEMAS",          SYM(DATABASES)},
unknown's avatar
unknown committed
481 482
  { "SECOND",		SYM(SECOND_SYM)},
  { "SECOND_MICROSECOND", SYM(SECOND_MICROSECOND_SYM)},
483
  { "SECURITY",         SYM(SECURITY_SYM)},
unknown's avatar
unknown committed
484
  { "SELECT",		SYM(SELECT_SYM)},
485
  { "SENSITIVE",        SYM(SENSITIVE_SYM)},
unknown's avatar
unknown committed
486 487 488 489
  { "SEPARATOR",	SYM(SEPARATOR_SYM)},
  { "SERIAL",		SYM(SERIAL_SYM)},
  { "SERIALIZABLE",	SYM(SERIALIZABLE_SYM)},
  { "SESSION",		SYM(SESSION_SYM)},
unknown's avatar
unknown committed
490
  { "SERVER",           SYM(SERVER_SYM)},
unknown's avatar
unknown committed
491 492 493 494
  { "SET",		SYM(SET)},
  { "SHARE",		SYM(SHARE_SYM)},
  { "SHOW",		SYM(SHOW)},
  { "SHUTDOWN",		SYM(SHUTDOWN)},
Marc Alff's avatar
Marc Alff committed
495
  { "SIGNAL",           SYM(SIGNAL_SYM)},
unknown's avatar
unknown committed
496 497 498
  { "SIGNED",		SYM(SIGNED_SYM)},
  { "SIMPLE",		SYM(SIMPLE_SYM)},
  { "SLAVE",            SYM(SLAVE)},
499
  { "SLOW",             SYM(SLOW)},
500
  { "SNAPSHOT",         SYM(SNAPSHOT_SYM)},
unknown's avatar
unknown committed
501
  { "SMALLINT",		SYM(SMALLINT)},
unknown's avatar
unknown committed
502
  { "SOCKET",		SYM(SOCKET_SYM)},
unknown's avatar
unknown committed
503
  { "SOME",             SYM(ANY_SYM)},
504
  { "SONAME",		SYM(SONAME_SYM)},
unknown's avatar
unknown committed
505
  { "SOUNDS",		SYM(SOUNDS_SYM)},
unknown's avatar
unknown committed
506
  { "SOURCE",   SYM(SOURCE_SYM)},
unknown's avatar
unknown committed
507
  { "SPATIAL",		SYM(SPATIAL_SYM)},
508 509 510 511 512
  { "SPECIFIC",         SYM(SPECIFIC_SYM)},
  { "SQL",              SYM(SQL_SYM)},
  { "SQLEXCEPTION",     SYM(SQLEXCEPTION_SYM)},
  { "SQLSTATE",         SYM(SQLSTATE_SYM)},
  { "SQLWARNING",       SYM(SQLWARNING_SYM)},
unknown's avatar
unknown committed
513 514 515 516 517 518 519
  { "SQL_BIG_RESULT",	SYM(SQL_BIG_RESULT)},
  { "SQL_BUFFER_RESULT", SYM(SQL_BUFFER_RESULT)},
  { "SQL_CACHE",        SYM(SQL_CACHE_SYM)},
  { "SQL_CALC_FOUND_ROWS", SYM(SQL_CALC_FOUND_ROWS)},
  { "SQL_NO_CACHE",	SYM(SQL_NO_CACHE_SYM)},
  { "SQL_SMALL_RESULT", SYM(SQL_SMALL_RESULT)},
  { "SQL_THREAD",	SYM(SQL_THREAD)},
520 521 522 523 524 525 526 527 528
  { "SQL_TSI_FRAC_SECOND", SYM(FRAC_SECOND_SYM)},
  { "SQL_TSI_SECOND",   SYM(SECOND_SYM)},
  { "SQL_TSI_MINUTE",   SYM(MINUTE_SYM)},
  { "SQL_TSI_HOUR",     SYM(HOUR_SYM)},
  { "SQL_TSI_DAY",      SYM(DAY_SYM)},
  { "SQL_TSI_WEEK",     SYM(WEEK_SYM)},
  { "SQL_TSI_MONTH",    SYM(MONTH_SYM)},
  { "SQL_TSI_QUARTER",  SYM(QUARTER_SYM)},
  { "SQL_TSI_YEAR",     SYM(YEAR_SYM)},
unknown's avatar
unknown committed
529 530 531
  { "SSL",		SYM(SSL_SYM)},
  { "START",		SYM(START_SYM)},
  { "STARTING",		SYM(STARTING)},
532
  { "STARTS",		SYM(STARTS_SYM)},
unknown's avatar
unknown committed
533 534 535 536 537
  { "STATUS",		SYM(STATUS_SYM)},
  { "STOP",		SYM(STOP_SYM)},
  { "STORAGE",		SYM(STORAGE_SYM)},
  { "STRAIGHT_JOIN",	SYM(STRAIGHT_JOIN)},
  { "STRING",		SYM(STRING_SYM)},
Marc Alff's avatar
Marc Alff committed
538
  { "SUBCLASS_ORIGIN",  SYM(SUBCLASS_ORIGIN_SYM)},
unknown's avatar
unknown committed
539
  { "SUBJECT",		SYM(SUBJECT_SYM)},
540 541
  { "SUBPARTITION",     SYM(SUBPARTITION_SYM)},
  { "SUBPARTITIONS",    SYM(SUBPARTITIONS_SYM)},
unknown's avatar
unknown committed
542
  { "SUPER",		SYM(SUPER_SYM)},
543
  { "SUSPEND",          SYM(SUSPEND_SYM)},
unknown's avatar
unknown committed
544 545
  { "SWAPS",      SYM(SWAPS_SYM)},
  { "SWITCHES",   SYM(SWITCHES_SYM)},
unknown's avatar
unknown committed
546
  { "TABLE",		SYM(TABLE_SYM)},
Marc Alff's avatar
Marc Alff committed
547
  { "TABLE_NAME",       SYM(TABLE_NAME_SYM)},
unknown's avatar
unknown committed
548
  { "TABLES",		SYM(TABLES)},
549 550
  { "TABLESPACE",	        SYM(TABLESPACE)},
  { "TABLE_CHECKSUM",	SYM(TABLE_CHECKSUM_SYM)},
unknown's avatar
unknown committed
551
  { "TEMPORARY",	SYM(TEMPORARY)},
552
  { "TEMPTABLE",	SYM(TEMPTABLE_SYM)},
unknown's avatar
unknown committed
553 554
  { "TERMINATED",	SYM(TERMINATED)},
  { "TEXT",		SYM(TEXT_SYM)},
555
  { "THAN",             SYM(THAN_SYM)},
unknown's avatar
unknown committed
556 557 558
  { "THEN",		SYM(THEN_SYM)},
  { "TIME",		SYM(TIME_SYM)},
  { "TIMESTAMP",	SYM(TIMESTAMP)},
559 560
  { "TIMESTAMPADD",     SYM(TIMESTAMP_ADD)},
  { "TIMESTAMPDIFF",    SYM(TIMESTAMP_DIFF)},
unknown's avatar
unknown committed
561 562 563 564 565 566
  { "TINYBLOB",		SYM(TINYBLOB)},
  { "TINYINT",		SYM(TINYINT)},
  { "TINYTEXT",		SYM(TINYTEXT)},
  { "TO",		SYM(TO_SYM)},
  { "TRAILING",		SYM(TRAILING)},
  { "TRANSACTION",	SYM(TRANSACTION_SYM)},
567
  { "TRIGGER",          SYM(TRIGGER_SYM)},
568
  { "TRIGGERS",         SYM(TRIGGERS_SYM)},
unknown's avatar
unknown committed
569 570 571 572 573
  { "TRUE",		SYM(TRUE_SYM)},
  { "TRUNCATE",		SYM(TRUNCATE_SYM)},
  { "TYPE",		SYM(TYPE_SYM)},
  { "TYPES",		SYM(TYPES_SYM)},
  { "UNCOMMITTED",	SYM(UNCOMMITTED_SYM)},
574
  { "UNDEFINED",	SYM(UNDEFINED_SYM)},
unknown's avatar
unknown committed
575 576
  { "UNDO_BUFFER_SIZE",	SYM(UNDO_BUFFER_SIZE_SYM)},
  { "UNDOFILE", 	SYM(UNDOFILE_SYM)},
577
  { "UNDO",             SYM(UNDO_SYM)},
unknown's avatar
unknown committed
578 579 580
  { "UNICODE",	        SYM(UNICODE_SYM)},
  { "UNION",	        SYM(UNION_SYM)},
  { "UNIQUE",		SYM(UNIQUE_SYM)},
581
  { "UNKNOWN",		SYM(UNKNOWN_SYM)},
unknown's avatar
unknown committed
582
  { "UNLOCK",		SYM(UNLOCK_SYM)},
583
  { "UNINSTALL",        SYM(UNINSTALL_SYM)},
unknown's avatar
unknown committed
584 585 586
  { "UNSIGNED",		SYM(UNSIGNED)},
  { "UNTIL",		SYM(UNTIL_SYM)},
  { "UPDATE",		SYM(UPDATE_SYM)},
unknown's avatar
unknown committed
587
  { "UPGRADE",          SYM(UPGRADE_SYM)},
unknown's avatar
unknown committed
588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603
  { "USAGE",		SYM(USAGE)},
  { "USE",		SYM(USE_SYM)},
  { "USER",		SYM(USER)},
  { "USER_RESOURCES",	SYM(RESOURCES)},
  { "USE_FRM",		SYM(USE_FRM)},
  { "USING",		SYM(USING)},
  { "UTC_DATE",         SYM(UTC_DATE_SYM)},
  { "UTC_TIME",         SYM(UTC_TIME_SYM)},
  { "UTC_TIMESTAMP",    SYM(UTC_TIMESTAMP_SYM)},
  { "VALUE",		SYM(VALUE_SYM)},
  { "VALUES",		SYM(VALUES)},
  { "VARBINARY",	SYM(VARBINARY)},
  { "VARCHAR",		SYM(VARCHAR)},
  { "VARCHARACTER",	SYM(VARCHAR)},
  { "VARIABLES",	SYM(VARIABLES)},
  { "VARYING",		SYM(VARYING)},
unknown's avatar
unknown committed
604
  { "WAIT",		SYM(WAIT_SYM)},
unknown's avatar
unknown committed
605
  { "WARNINGS",		SYM(WARNINGS)},
606
  { "WEEK",		SYM(WEEK_SYM)},
unknown's avatar
unknown committed
607 608
  { "WHEN",		SYM(WHEN_SYM)},
  { "WHERE",		SYM(WHERE)},
609 610
  { "WHILE",            SYM(WHILE_SYM)},
  { "VIEW",		SYM(VIEW_SYM)},
unknown's avatar
unknown committed
611 612
  { "WITH",		SYM(WITH)},
  { "WORK",		SYM(WORK_SYM)},
unknown's avatar
unknown committed
613
  { "WRAPPER",		SYM(WRAPPER_SYM)},
unknown's avatar
unknown committed
614 615 616
  { "WRITE",		SYM(WRITE_SYM)},
  { "X509",		SYM(X509_SYM)},
  { "XOR",		SYM(XOR)},
617
  { "XA",               SYM(XA_SYM)},
618
  { "XML",              SYM(XML_SYM)}, /* LOAD XML Arnold/Erik */
unknown's avatar
unknown committed
619 620 621
  { "YEAR",		SYM(YEAR_SYM)},
  { "YEAR_MONTH",	SYM(YEAR_MONTH_SYM)},
  { "ZEROFILL",		SYM(ZEROFILL)},
622
  { "||",		SYM(OR_OR_SYM)}
unknown's avatar
unknown committed
623 624 625 626
};


static SYMBOL sql_functions[] = {
unknown's avatar
unknown committed
627 628
  { "ADDDATE",		SYM(ADDDATE_SYM)},
  { "BIT_AND",		SYM(BIT_AND)},
629
  { "BIT_OR",		SYM(BIT_OR)},
unknown's avatar
unknown committed
630 631 632 633 634 635 636 637 638 639 640 641 642 643
  { "BIT_XOR",		SYM(BIT_XOR)},
  { "CAST",		SYM(CAST_SYM)},
  { "COUNT",		SYM(COUNT_SYM)},
  { "CURDATE",		SYM(CURDATE)},
  { "CURTIME",		SYM(CURTIME)},
  { "DATE_ADD",		SYM(DATE_ADD_INTERVAL)},
  { "DATE_SUB",		SYM(DATE_SUB_INTERVAL)},
  { "EXTRACT",		SYM(EXTRACT_SYM)},
  { "GROUP_CONCAT",	SYM(GROUP_CONCAT_SYM)},
  { "MAX",		SYM(MAX_SYM)},
  { "MID",		SYM(SUBSTRING)},	/* unireg function */
  { "MIN",		SYM(MIN_SYM)},
  { "NOW",		SYM(NOW_SYM)},
  { "POSITION",		SYM(POSITION_SYM)},
644
  { "SESSION_USER",     SYM(USER)},
unknown's avatar
unknown committed
645 646
  { "STD",		SYM(STD_SYM)},
  { "STDDEV",		SYM(STD_SYM)},
647 648
  { "STDDEV_POP",	SYM(STD_SYM)},
  { "STDDEV_SAMP",	SYM(STDDEV_SAMP_SYM)},
649
  { "SUBDATE",		SYM(SUBDATE_SYM)},
unknown's avatar
unknown committed
650
  { "SUBSTR",		SYM(SUBSTRING)},
unknown's avatar
unknown committed
651 652
  { "SUBSTRING",	SYM(SUBSTRING)},
  { "SUM",		SYM(SUM_SYM)},
653
  { "SYSDATE",		SYM(SYSDATE)},
654
  { "SYSTEM_USER",      SYM(USER)},
unknown's avatar
unknown committed
655 656
  { "TRIM",		SYM(TRIM)},
  { "VARIANCE",		SYM(VARIANCE_SYM)},
657 658
  { "VAR_POP",		SYM(VARIANCE_SYM)},
  { "VAR_SAMP",		SYM(VAR_SAMP_SYM)},
unknown's avatar
unknown committed
659
};
660 661

#endif /* LEX_INCLUDED */