Commit 2d0bb667 authored by unknown's avatar unknown

Merge arjen@work.mysql.com:/home/bk/mysql-4.0

into fred.bitbike.com:/home/arjen/mysql-4.0

parents 7e5af122 7168a188
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
# 2001-11-20 Fixups by arjen@mysql.com, 2 keywords and 15 synonyms were missing # 2001-11-20 Fixups by arjen@mysql.com, 2 keywords and 15 synonyms were missing
# 2001-12-07 Fixup by arjen@mysql.com, add column headings for multitable. # 2001-12-07 Fixup by arjen@mysql.com, add column headings for multitable.
# 2002-05-01 Fixup by arjen@mysql.com, use 3 columns instead of 4. # 2002-05-01 Fixup by arjen@mysql.com, use 3 columns instead of 4.
# 2002-05-03 Fixup by arjen@mysql.com, fill last row to full # of columns.
print STDERR "Scanning lex.h for symbols..\n"; print STDERR "Scanning lex.h for symbols..\n";
open LEX, "<../sql/lex.h"; open LEX, "<../sql/lex.h";
...@@ -28,11 +29,6 @@ while(($line = <YACC>) =~ /[\s|]+([A-Z_]+)/) { ...@@ -28,11 +29,6 @@ while(($line = <YACC>) =~ /[\s|]+([A-Z_]+)/) {
close YACC; close YACC;
$list = sprintf("\@c Reserved word list updated %s by %s.\n".
"\@c To regenerate, use Support/update-reserved-words.pl.\n\n",
&pretty_date, $ENV{USER});
print STDERR "Copying reserved words to an array...\n"; print STDERR "Copying reserved words to an array...\n";
foreach(keys %words) { push @words, $words{$_}; }; foreach(keys %words) { push @words, $words{$_}; };
...@@ -42,11 +38,15 @@ print STDERR "Sorting array...\n"; ...@@ -42,11 +38,15 @@ print STDERR "Sorting array...\n";
printf STDERR "There are %i reserved words.\n", scalar @words; printf STDERR "There are %i reserved words.\n", scalar @words;
@pre = ("\@item", " \@tab", " \@tab"); @pre = ("\@item", " \@tab", " \@tab");
@post = ("\n", "\n", "\n");
$list = "";
for($i=0; $word = shift(@words); $i++) { for($i=0; $word = shift(@words); $i++) {
$list .= sprintf "%s %-30s %s", $pre[$i%3], "\@code\{$word\}", $post[$i%3]; $list .= sprintf "%s %s\n", $pre[$i%3], "\@code\{$word\}";
}; $list .= "\n"; }
# Fill last row to full # of columns.
for( ; $i%3; $i++) {
$list .= sprintf "%s\n", $pre[$i%3];
}
open OLD, "<manual.texi"; open OLD, "<manual.texi";
open NEW, ">manual-tmp.texi"; open NEW, ">manual-tmp.texi";
...@@ -54,10 +54,14 @@ open NEW, ">manual-tmp.texi"; ...@@ -54,10 +54,14 @@ open NEW, ">manual-tmp.texi";
print STDERR "Copying beginning of manual.texi...\n"; print STDERR "Copying beginning of manual.texi...\n";
while(($line = <OLD>) !~ /START_OF_RESERVED_WORDS/) { print NEW $line; }; while(($line = <OLD>) !~ /START_OF_RESERVED_WORDS/) { print NEW $line; };
print NEW "\@c START_OF_RESERVED_WORDS\n\n"; print NEW "\@c START_OF_RESERVED_WORDS\n\n";
printf NEW "\@c Reserved word list updated %s by %s.\n".
"\@c To regenerate, use Support/update-reserved-words.pl.\n\n",
&pretty_date, $ENV{USER};
print STDERR "Inserting list of reserved words...\n"; print STDERR "Inserting list of reserved words...\n";
# Ensure the fractions add up to 100% otherwise it looks funny in print: # Ensure the fractions add up to 100% otherwise it looks funny in print:
print NEW "\@multitable \@columnfractions .33 .33 .34\n"; print NEW "\@multitable \@columnfractions .33 .33 .34\n";
print NEW "\@item \@strong{Word} \@tab \@strong{Word} \@tab \@strong{Word}\n"; print NEW "\@item \@strong{Word}\n \@tab \@strong{Word}\n \@tab \@strong{Word}\n";
print NEW $list; print NEW $list;
print NEW "\@end multitable\n"; print NEW "\@end multitable\n";
print STDERR "Skipping over old list...\n"; print STDERR "Skipping over old list...\n";
......
...@@ -28247,196 +28247,199 @@ A few are reserved because MySQL needs them and is ...@@ -28247,196 +28247,199 @@ A few are reserved because MySQL needs them and is
@c START_OF_RESERVED_WORDS @c START_OF_RESERVED_WORDS
@multitable @columnfractions .33 .33 .34 @c Reserved word list updated Fri May 3 08:41:00 2002 by arjen.
@item @strong{Word} @tab @strong{Word} @tab @strong{Word}
@c Reserved word list updated Wed May 1 10:50:08 2002 by arjen.
@c To regenerate, use Support/update-reserved-words.pl. @c To regenerate, use Support/update-reserved-words.pl.
@item @code{ADD} @multitable @columnfractions .33 .33 .34
@tab @code{ALL} @item @strong{Word}
@tab @code{ALTER} @tab @strong{Word}
@item @code{ANALYZE} @tab @strong{Word}
@tab @code{AND} @item @code{ADD}
@tab @code{AS} @tab @code{ALL}
@item @code{ASC} @tab @code{ALTER}
@tab @code{AUTO_INCREMENT} @item @code{ANALYZE}
@tab @code{BDB} @tab @code{AND}
@item @code{BERKELEYDB} @tab @code{AS}
@tab @code{BETWEEN} @item @code{ASC}
@tab @code{BIGINT} @tab @code{AUTO_INCREMENT}
@item @code{BINARY} @tab @code{BDB}
@tab @code{BLOB} @item @code{BERKELEYDB}
@tab @code{BOTH} @tab @code{BETWEEN}
@item @code{BY} @tab @code{BIGINT}
@tab @code{CASCADE} @item @code{BINARY}
@tab @code{CASE} @tab @code{BLOB}
@item @code{CHANGE} @tab @code{BOTH}
@tab @code{CHAR} @item @code{BY}
@tab @code{CHARACTER} @tab @code{CASCADE}
@item @code{COLUMN} @tab @code{CASE}
@tab @code{COLUMNS} @item @code{CHANGE}
@tab @code{CONSTRAINT} @tab @code{CHAR}
@item @code{CREATE} @tab @code{CHARACTER}
@tab @code{CROSS} @item @code{COLUMN}
@tab @code{CURRENT_DATE} @tab @code{COLUMNS}
@item @code{CURRENT_TIME} @tab @code{CONSTRAINT}
@tab @code{CURRENT_TIMESTAMP} @item @code{CREATE}
@tab @code{DATABASE} @tab @code{CROSS}
@item @code{DATABASES} @tab @code{CURRENT_DATE}
@tab @code{DAY_HOUR} @item @code{CURRENT_TIME}
@tab @code{DAY_MINUTE} @tab @code{CURRENT_TIMESTAMP}
@item @code{DAY_SECOND} @tab @code{DATABASE}
@tab @code{DEC} @item @code{DATABASES}
@tab @code{DECIMAL} @tab @code{DAY_HOUR}
@item @code{DEFAULT} @tab @code{DAY_MINUTE}
@tab @code{DELAYED} @item @code{DAY_SECOND}
@tab @code{DELETE} @tab @code{DEC}
@item @code{DESC} @tab @code{DECIMAL}
@tab @code{DESCRIBE} @item @code{DEFAULT}
@tab @code{DISTINCT} @tab @code{DELAYED}
@item @code{DISTINCTROW} @tab @code{DELETE}
@tab @code{DOUBLE} @item @code{DESC}
@tab @code{DROP} @tab @code{DESCRIBE}
@item @code{ELSE} @tab @code{DISTINCT}
@tab @code{ENCLOSED} @item @code{DISTINCTROW}
@tab @code{ESCAPED} @tab @code{DOUBLE}
@item @code{EXISTS} @tab @code{DROP}
@tab @code{EXPLAIN} @item @code{ELSE}
@tab @code{FIELDS} @tab @code{ENCLOSED}
@item @code{FLOAT} @tab @code{ESCAPED}
@tab @code{FOR} @item @code{EXISTS}
@tab @code{FOREIGN} @tab @code{EXPLAIN}
@item @code{FROM} @tab @code{FIELDS}
@tab @code{FULLTEXT} @item @code{FLOAT}
@tab @code{FUNCTION} @tab @code{FOR}
@item @code{GRANT} @tab @code{FOREIGN}
@tab @code{GROUP} @item @code{FROM}
@tab @code{HAVING} @tab @code{FULLTEXT}
@item @code{HIGH_PRIORITY} @tab @code{FUNCTION}
@tab @code{HOUR_MINUTE} @item @code{GRANT}
@tab @code{HOUR_SECOND} @tab @code{GROUP}
@item @code{IF} @tab @code{HAVING}
@tab @code{IGNORE} @item @code{HIGH_PRIORITY}
@tab @code{IN} @tab @code{HOUR_MINUTE}
@item @code{INDEX} @tab @code{HOUR_SECOND}
@tab @code{INFILE} @item @code{IF}
@tab @code{INNER} @tab @code{IGNORE}
@item @code{INNODB} @tab @code{IN}
@tab @code{INSERT} @item @code{INDEX}
@tab @code{INSERT_ID} @tab @code{INFILE}
@item @code{INT} @tab @code{INNER}
@tab @code{INTEGER} @item @code{INNODB}
@tab @code{INTERVAL} @tab @code{INSERT}
@item @code{INTO} @tab @code{INSERT_ID}
@tab @code{IS} @item @code{INT}
@tab @code{JOIN} @tab @code{INTEGER}
@item @code{KEY} @tab @code{INTERVAL}
@tab @code{KEYS} @item @code{INTO}
@tab @code{KILL} @tab @code{IS}
@item @code{LAST_INSERT_ID} @tab @code{JOIN}
@tab @code{LEADING} @item @code{KEY}
@tab @code{LEFT} @tab @code{KEYS}
@item @code{LIKE} @tab @code{KILL}
@tab @code{LIMIT} @item @code{LAST_INSERT_ID}
@tab @code{LINES} @tab @code{LEADING}
@item @code{LOAD} @tab @code{LEFT}
@tab @code{LOCK} @item @code{LIKE}
@tab @code{LONG} @tab @code{LIMIT}
@item @code{LONGBLOB} @tab @code{LINES}
@tab @code{LONGTEXT} @item @code{LOAD}
@tab @code{LOW_PRIORITY} @tab @code{LOCK}
@item @code{MASTER_SERVER_ID} @tab @code{LONG}
@tab @code{MATCH} @item @code{LONGBLOB}
@tab @code{MEDIUMBLOB} @tab @code{LONGTEXT}
@item @code{MEDIUMINT} @tab @code{LOW_PRIORITY}
@tab @code{MEDIUMTEXT} @item @code{MASTER_SERVER_ID}
@tab @code{MIDDLEINT} @tab @code{MATCH}
@item @code{MINUTE_SECOND} @tab @code{MEDIUMBLOB}
@tab @code{MRG_MYISAM} @item @code{MEDIUMINT}
@tab @code{NATURAL} @tab @code{MEDIUMTEXT}
@item @code{NOT} @tab @code{MIDDLEINT}
@tab @code{NULL} @item @code{MINUTE_SECOND}
@tab @code{NUMERIC} @tab @code{MRG_MYISAM}
@item @code{ON} @tab @code{NATURAL}
@tab @code{OPTIMIZE} @item @code{NOT}
@tab @code{OPTION} @tab @code{NULL}
@item @code{OPTIONALLY} @tab @code{NUMERIC}
@tab @code{OR} @item @code{ON}
@tab @code{ORDER} @tab @code{OPTIMIZE}
@item @code{OUTER} @tab @code{OPTION}
@tab @code{OUTFILE} @item @code{OPTIONALLY}
@tab @code{PARTIAL} @tab @code{OR}
@item @code{PRECISION} @tab @code{ORDER}
@tab @code{PRIMARY} @item @code{OUTER}
@tab @code{PRIVILEGES} @tab @code{OUTFILE}
@item @code{PROCEDURE} @tab @code{PARTIAL}
@tab @code{PURGE} @item @code{PRECISION}
@tab @code{READ} @tab @code{PRIMARY}
@item @code{REAL} @tab @code{PRIVILEGES}
@tab @code{REFERENCES} @item @code{PROCEDURE}
@tab @code{REGEXP} @tab @code{PURGE}
@item @code{RENAME} @tab @code{READ}
@tab @code{REPLACE} @item @code{REAL}
@tab @code{REQUIRE} @tab @code{REFERENCES}
@item @code{RESTRICT} @tab @code{REGEXP}
@tab @code{RETURNS} @item @code{RENAME}
@tab @code{REVOKE} @tab @code{REPLACE}
@item @code{RIGHT} @tab @code{REQUIRE}
@tab @code{RLIKE} @item @code{RESTRICT}
@tab @code{SELECT} @tab @code{RETURNS}
@item @code{SET} @tab @code{REVOKE}
@tab @code{SHOW} @item @code{RIGHT}
@tab @code{SMALLINT} @tab @code{RLIKE}
@item @code{SONAME} @tab @code{SELECT}
@tab @code{SQL_AUTO_IS_NULL} @item @code{SET}
@tab @code{SQL_BIG_RESULT} @tab @code{SHOW}
@item @code{SQL_BIG_SELECTS} @tab @code{SMALLINT}
@tab @code{SQL_BIG_TABLES} @item @code{SONAME}
@tab @code{SQL_BUFFER_RESULT} @tab @code{SQL_AUTO_IS_NULL}
@item @code{SQL_CALC_FOUND_ROWS} @tab @code{SQL_BIG_RESULT}
@tab @code{SQL_LOG_BIN} @item @code{SQL_BIG_SELECTS}
@tab @code{SQL_LOG_OFF} @tab @code{SQL_BIG_TABLES}
@item @code{SQL_LOG_UPDATE} @tab @code{SQL_BUFFER_RESULT}
@tab @code{SQL_LOW_PRIORITY_UPDATES} @item @code{SQL_CALC_FOUND_ROWS}
@tab @code{SQL_MAX_JOIN_SIZE} @tab @code{SQL_LOG_BIN}
@item @code{SQL_QUOTE_SHOW_CREATE} @tab @code{SQL_LOG_OFF}
@tab @code{SQL_SAFE_UPDATES} @item @code{SQL_LOG_UPDATE}
@tab @code{SQL_SELECT_LIMIT} @tab @code{SQL_LOW_PRIORITY_UPDATES}
@item @code{SQL_SLAVE_SKIP_COUNTER} @tab @code{SQL_MAX_JOIN_SIZE}
@tab @code{SQL_SMALL_RESULT} @item @code{SQL_QUOTE_SHOW_CREATE}
@tab @code{SQL_WARNINGS} @tab @code{SQL_SAFE_UPDATES}
@item @code{SSL} @tab @code{SQL_SELECT_LIMIT}
@tab @code{STARTING} @item @code{SQL_SLAVE_SKIP_COUNTER}
@tab @code{STRAIGHT_JOIN} @tab @code{SQL_SMALL_RESULT}
@item @code{STRIPED} @tab @code{SQL_WARNINGS}
@tab @code{TABLE} @item @code{SSL}
@tab @code{TABLES} @tab @code{STARTING}
@item @code{TERMINATED} @tab @code{STRAIGHT_JOIN}
@tab @code{THEN} @item @code{STRIPED}
@tab @code{TINYBLOB} @tab @code{TABLE}
@item @code{TINYINT} @tab @code{TABLES}
@tab @code{TINYTEXT} @item @code{TERMINATED}
@tab @code{TO} @tab @code{THEN}
@item @code{TRAILING} @tab @code{TINYBLOB}
@tab @code{UNION} @item @code{TINYINT}
@tab @code{UNIQUE} @tab @code{TINYTEXT}
@item @code{UNLOCK} @tab @code{TO}
@tab @code{UNSIGNED} @item @code{TRAILING}
@tab @code{UPDATE} @tab @code{UNION}
@item @code{USAGE} @tab @code{UNIQUE}
@tab @code{USE} @item @code{UNLOCK}
@tab @code{USING} @tab @code{UNSIGNED}
@item @code{VALUES} @tab @code{UPDATE}
@tab @code{VARBINARY} @item @code{USAGE}
@tab @code{VARCHAR} @tab @code{USE}
@item @code{VARYING} @tab @code{USING}
@tab @code{WHEN} @item @code{VALUES}
@tab @code{WHERE} @tab @code{VARBINARY}
@item @code{WITH} @tab @code{VARCHAR}
@tab @code{WRITE} @item @code{VARYING}
@tab @code{YEAR_MONTH} @tab @code{WHEN}
@item @code{ZEROFILL} @tab @code{WHERE}
@item @code{WITH}
@tab @code{WRITE}
@tab @code{YEAR_MONTH}
@item @code{ZEROFILL}
@tab
@tab
@end multitable @end multitable
@c END_OF_RESERVED_WORDS @c END_OF_RESERVED_WORDS
...@@ -36491,21 +36494,31 @@ Transactional @code{InnoDB} tables that have been changed will be invalidated ...@@ -36491,21 +36494,31 @@ Transactional @code{InnoDB} tables that have been changed will be invalidated
when a @code{COMMIT} is performed. when a @code{COMMIT} is performed.
A query cannot be cached if it contains one of the functions: A query cannot be cached if it contains one of the functions:
@multitable @columnfractions .25 .25 .25 .25 @multitable @columnfractions .33 .33 .34
@item @strong{Function} @tab @strong{Function} @item @strong{Function}
@tab @strong{Function} @tab @strong{Function} @tab @strong{Function}
@item @code{User-Defined Functions} @tab @code{CONNECTION_ID} @tab @strong{Function}
@tab @code{FOUND_ROWS} @tab @code{GET_LOCK} @item @code{User-Defined Functions}
@item @code{RELEASE_LOCK} @tab @code{LOAD_FILE} @tab @code{CONNECTION_ID}
@tab @code{MASTER_POS_WAIT} @tab @code{NOW} @tab @code{FOUND_ROWS}
@item @code{SYSDATE} @tab @code{CURRENT_TIMESTAMP} @item @code{GET_LOCK}
@tab @code{CURDATE} @tab @code{CURRENT_DATE} @tab @code{RELEASE_LOCK}
@item @code{CURTIME} @tab @code{CURRENT_TIME} @tab @code{LOAD_FILE}
@tab @code{DATABASE} @tab @code{ENCRYPT} (with one parameter) @item @code{MASTER_POS_WAIT}
@item @code{LAST_INSERT_ID} @tab @code{RAND} @tab @code{NOW}
@tab @code{UNIX_TIMESTAMP} (without parameters) @tab @code{USER} @tab @code{SYSDATE}
@item @code{BENCHMARK} @tab @item @code{CURRENT_TIMESTAMP}
@tab @tab @tab @code{CURDATE}
@tab @code{CURRENT_DATE}
@item @code{CURTIME}
@tab @code{CURRENT_TIME}
@tab @code{DATABASE}
@item @code{ENCRYPT} (with one parameter)
@tab @code{LAST_INSERT_ID}
@tab @code{RAND}
@item @code{UNIX_TIMESTAMP} (without parameters)
@tab @code{USER}
@tab @code{BENCHMARK}
@end multitable @end multitable
Nor can a query be cached if it contains user variables, Nor can a query be cached if it contains user variables,
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