Commit 49ddcb92 authored by unknown's avatar unknown

Fix to reserved words script.

Updated reserved words list in manual.


Docs/Support/update-reserved-words.pl:
  Fix to reserved words script, 2 keywords and 15 synonyms were missing.
Docs/manual.texi:
  Updated reserved word list.
parent 079f110a
#!/usr/bin/perl
# Based on a Emacs macro by david@mysql.com
# Implemented in Perl by jeremy@mysql.com
# 2001-11-20 Fixups by arjen@mysql.com, 2 keywords and 15 synonyms were missing
print STDERR "Scanning lex.h for symbols..\n";
open LEX, "<../sql/lex.h";
while($line = <LEX>) {
if($line =~ /\{\s+\"([A-Z_]+)\",\s+SYM\(([A-Z_]+)\)/) {
$words{$2} = $1;
if($line =~ /\{\s*\"([A-Z_]+)\"/) {
$words{$1} = $1;
} elsif($line =~ /sql_functions/) {
last;
};
......@@ -15,7 +19,9 @@ print STDERR "Scanning sql_yacc.yy for non-reserved words...\n";
open YACC, "<../sql/sql_yacc.yy";
while(<YACC> !~ /^keyword:/) {};
while(($line = <YACC>) =~ /[\s|]+([A-Z_]+)/) {
delete $words{$1};
$keyword = $1;
$keyword =~ s/_SYM//;
delete $words{$keyword};
};
close YACC;
......
......@@ -27120,26 +27120,30 @@ A few are reserved because MySQL needs them and is
@c START_OF_RESERVED_WORDS
@multitable @columnfractions .25 .25 .25 .25
@c Reserved word list updated Tue Nov 6 08:50:27 2001 by arjen.
@c Reserved word list updated Tue Nov 20 13:26:39 2001 by arjen.
@c To regenerate, use Support/update-reserved-words.pl.
@item @code{ADD} @tab @code{ALL}
@tab @code{ALTER} @tab @code{ANALYZE}
@item @code{AND} @tab @code{AS}
@tab @code{ASC} @tab @code{BETWEEN}
@item @code{BIGINT} @tab @code{BINARY}
@tab @code{BLOB} @tab @code{BOTH}
@item @code{BY} @tab @code{CASCADE}
@tab @code{CASE} @tab @code{CHANGE}
@tab @code{ASC} @tab @code{AUTO_INCREMENT}
@item @code{BDB} @tab @code{BERKELEYDB}
@tab @code{BETWEEN} @tab @code{BIGINT}
@item @code{BINARY} @tab @code{BLOB}
@tab @code{BOTH} @tab @code{BY}
@item @code{CASCADE} @tab @code{CASE}
@tab @code{CHANGE} @tab @code{CHAR}
@item @code{CHARACTER} @tab @code{COLUMN}
@tab @code{CONSTRAINT} @tab @code{CREATE}
@item @code{CROSS} @tab @code{CURRENT_DATE}
@tab @code{CURRENT_TIME} @tab @code{CURRENT_TIMESTAMP}
@item @code{DATABASE} @tab @code{DATABASES}
@tab @code{DAY_HOUR} @tab @code{DAY_MINUTE}
@item @code{DAY_SECOND} @tab @code{DECIMAL}
@tab @code{DEFAULT} @tab @code{DELAYED}
@item @code{DELETE} @tab @code{DESC}
@tab @code{COLUMNS} @tab @code{CONSTRAINT}
@item @code{CREATE} @tab @code{CROSS}
@tab @code{CURRENT_DATE} @tab @code{CURRENT_TIME}
@item @code{CURRENT_TIMESTAMP} @tab @code{DATABASE}
@tab @code{DATABASES} @tab @code{DAY_HOUR}
@item @code{DAY_MINUTE} @tab @code{DAY_SECOND}
@tab @code{DEC} @tab @code{DECIMAL}
@item @code{DEFAULT} @tab @code{DELAYED}
@tab @code{DELETE} @tab @code{DESC}
@item @code{DESCRIBE} @tab @code{DISTINCT}
@tab @code{DISTINCTROW} @tab @code{DOUBLE}
@item @code{DROP} @tab @code{ELSE}
@tab @code{ENCLOSED} @tab @code{ESCAPED}
......@@ -27147,67 +27151,71 @@ A few are reserved because MySQL needs them and is
@tab @code{FIELDS} @tab @code{FLOAT}
@item @code{FOR} @tab @code{FOREIGN}
@tab @code{FROM} @tab @code{FULLTEXT}
@item @code{GRANT} @tab @code{GROUP}
@tab @code{HAVING} @tab @code{HIGH_PRIORITY}
@item @code{HOUR_MINUTE} @tab @code{HOUR_SECOND}
@tab @code{IF} @tab @code{IGNORE}
@item @code{IN} @tab @code{INDEX}
@tab @code{INFILE} @tab @code{INNER}
@item @code{INSERT} @tab @code{INSERT_ID}
@tab @code{INTEGER} @tab @code{INTERVAL}
@item @code{INTO} @tab @code{IS}
@tab @code{JOIN} @tab @code{KEY}
@item @code{KEYS} @tab @code{KILL}
@tab @code{LAST_INSERT_ID} @tab @code{LEADING}
@item @code{LEFT} @tab @code{LIKE}
@tab @code{LIMIT} @tab @code{LINES}
@item @code{LOAD} @tab @code{LOCK}
@tab @code{LONG} @tab @code{LONGBLOB}
@item @code{LONGTEXT} @tab @code{LOW_PRIORITY}
@tab @code{MASTER_LOG_SEQ} @tab @code{MASTER_SERVER_ID}
@item @code{MATCH} @tab @code{MEDIUMBLOB}
@item @code{FUNCTION} @tab @code{GRANT}
@tab @code{GROUP} @tab @code{HAVING}
@item @code{HIGH_PRIORITY} @tab @code{HOUR_MINUTE}
@tab @code{HOUR_SECOND} @tab @code{IF}
@item @code{IGNORE} @tab @code{IN}
@tab @code{INDEX} @tab @code{INFILE}
@item @code{INNER} @tab @code{INNODB}
@tab @code{INSERT} @tab @code{INSERT_ID}
@item @code{INT} @tab @code{INTEGER}
@tab @code{INTERVAL} @tab @code{INTO}
@item @code{IS} @tab @code{JOIN}
@tab @code{KEY} @tab @code{KEYS}
@item @code{KILL} @tab @code{LAST_INSERT_ID}
@tab @code{LEADING} @tab @code{LEFT}
@item @code{LIKE} @tab @code{LIMIT}
@tab @code{LINES} @tab @code{LOAD}
@item @code{LOCK} @tab @code{LONG}
@tab @code{LONGBLOB} @tab @code{LONGTEXT}
@item @code{LOW_PRIORITY} @tab @code{MASTER_LOG_SEQ}
@tab @code{MASTER_SERVER_ID} @tab @code{MATCH}
@item @code{MEDIUMBLOB} @tab @code{MEDIUMINT}
@tab @code{MEDIUMTEXT} @tab @code{MIDDLEINT}
@item @code{MINUTE_SECOND} @tab @code{NATURAL}
@tab @code{NOT} @tab @code{NULL}
@item @code{NUMERIC} @tab @code{ON}
@tab @code{OPTIMIZE} @tab @code{OPTION}
@item @code{OPTIONALLY} @tab @code{OR}
@tab @code{ORDER} @tab @code{OUTER}
@item @code{OUTFILE} @tab @code{PARTIAL}
@tab @code{PRECISION} @tab @code{PRIMARY}
@item @code{PRIVILEGES} @tab @code{PROCEDURE}
@tab @code{PURGE} @tab @code{READ}
@item @code{REAL} @tab @code{REFERENCES}
@tab @code{RENAME} @tab @code{REPLACE}
@item @code{REQUIRE} @tab @code{RESTRICT}
@tab @code{RETURNS} @tab @code{REVOKE}
@item @code{RIGHT} @tab @code{RLIKE}
@tab @code{SELECT} @tab @code{SET}
@item @code{SHOW} @tab @code{SMALLINT}
@tab @code{SONAME} @tab @code{SQL_AUTO_IS_NULL}
@item @code{SQL_BIG_RESULT} @tab @code{SQL_BIG_SELECTS}
@tab @code{SQL_BIG_TABLES} @tab @code{SQL_BUFFER_RESULT}
@item @code{SQL_CALC_FOUND_ROWS} @tab @code{SQL_LOG_BIN}
@tab @code{SQL_LOG_OFF} @tab @code{SQL_LOG_UPDATE}
@item @code{SQL_LOW_PRIORITY_UPDATES} @tab @code{SQL_SAFE_UPDATES}
@item @code{MINUTE_SECOND} @tab @code{MRG_MYISAM}
@tab @code{NATURAL} @tab @code{NOT}
@item @code{NULL} @tab @code{NUMERIC}
@tab @code{ON} @tab @code{OPTIMIZE}
@item @code{OPTION} @tab @code{OPTIONALLY}
@tab @code{OR} @tab @code{ORDER}
@item @code{OUTER} @tab @code{OUTFILE}
@tab @code{PARTIAL} @tab @code{PRECISION}
@item @code{PRIMARY} @tab @code{PRIVILEGES}
@tab @code{PROCEDURE} @tab @code{PURGE}
@item @code{READ} @tab @code{REAL}
@tab @code{REFERENCES} @tab @code{REGEXP}
@item @code{RENAME} @tab @code{REPLACE}
@tab @code{REQUIRE} @tab @code{RESTRICT}
@item @code{RETURNS} @tab @code{REVOKE}
@tab @code{RIGHT} @tab @code{RLIKE}
@item @code{SELECT} @tab @code{SET}
@tab @code{SHOW} @tab @code{SMALLINT}
@item @code{SONAME} @tab @code{SQL_AUTO_IS_NULL}
@tab @code{SQL_BIG_RESULT} @tab @code{SQL_BIG_SELECTS}
@item @code{SQL_BIG_TABLES} @tab @code{SQL_BUFFER_RESULT}
@tab @code{SQL_CALC_FOUND_ROWS} @tab @code{SQL_LOG_BIN}
@item @code{SQL_LOG_OFF} @tab @code{SQL_LOG_UPDATE}
@tab @code{SQL_LOW_PRIORITY_UPDATES} @tab @code{SQL_MAX_JOIN_SIZE}
@item @code{SQL_QUOTE_SHOW_CREATE} @tab @code{SQL_SAFE_UPDATES}
@tab @code{SQL_SELECT_LIMIT} @tab @code{SQL_SLAVE_SKIP_COUNTER}
@item @code{SQL_SMALL_RESULT} @tab @code{SQL_WARNINGS}
@tab @code{SSL} @tab @code{STARTING}
@item @code{STRAIGHT_JOIN} @tab @code{TABLE}
@tab @code{TABLES} @tab @code{TERMINATED}
@item @code{THEN} @tab @code{TINYBLOB}
@tab @code{TINYINT} @tab @code{TINYTEXT}
@item @code{TO} @tab @code{TRAILING}
@tab @code{UNION} @tab @code{UNIQUE}
@item @code{UNLOCK} @tab @code{UNSIGNED}
@tab @code{UPDATE} @tab @code{USAGE}
@item @code{USE} @tab @code{USING}
@tab @code{VALUES} @tab @code{VARBINARY}
@item @code{VARCHAR} @tab @code{VARYING}
@tab @code{WHEN} @tab @code{WHERE}
@item @code{WITH} @tab @code{WRITE}
@tab @code{YEAR_MONTH} @tab @code{ZEROFILL}
@item @code{STRAIGHT_JOIN} @tab @code{STRIPED}
@tab @code{TABLE} @tab @code{TABLES}
@item @code{TERMINATED} @tab @code{THEN}
@tab @code{TINYBLOB} @tab @code{TINYINT}
@item @code{TINYTEXT} @tab @code{TO}
@tab @code{TRAILING} @tab @code{UNION}
@item @code{UNIQUE} @tab @code{UNLOCK}
@tab @code{UNSIGNED} @tab @code{UPDATE}
@item @code{USAGE} @tab @code{USE}
@tab @code{USING} @tab @code{VALUES}
@item @code{VARBINARY} @tab @code{VARCHAR}
@tab @code{VARYING} @tab @code{WHEN}
@item @code{WHERE} @tab @code{WITH}
@tab @code{WRITE} @tab @code{YEAR_MONTH}
@item @code{ZEROFILL}
@end multitable
@c END_OF_RESERVED_WORDS
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment