Add more reserved words, mostly for SQL92 compliance.

Include reserved words for string handling, outer joins, and unions.
This commit is contained in:
Thomas G. Lockhart 1997-09-01 05:53:31 +00:00
parent 559a28747a
commit 05eb632864
1 changed files with 45 additions and 18 deletions

View File

@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.12 1997/08/22 14:33:21 vadim Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.13 1997/09/01 05:53:31 thomas Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -35,7 +35,7 @@ static ScanKeyword ScanKeywords[] = {
{ "acl", ACL }, { "acl", ACL },
{ "add", ADD }, { "add", ADD },
{ "after", AFTER }, { "after", AFTER },
{ "aggregate", AGGREGATE }, { "aggregate", AGGREGATE },
{ "all", ALL }, { "all", ALL },
{ "alter", ALTER }, { "alter", ALTER },
{ "analyze", ANALYZE }, { "analyze", ANALYZE },
@ -44,13 +44,14 @@ static ScanKeyword ScanKeywords[] = {
{ "archIve", ARCHIVE }, /* XXX crooked: I < _ */ { "archIve", ARCHIVE }, /* XXX crooked: I < _ */
{ "arch_store", ARCH_STORE }, { "arch_store", ARCH_STORE },
{ "archive", ARCHIVE }, /* XXX crooked: i > _ */ { "archive", ARCHIVE }, /* XXX crooked: i > _ */
{ "as", AS }, { "as", AS },
{ "asc", ASC }, { "asc", ASC },
{ "backward", BACKWARD }, { "backward", BACKWARD },
{ "before", BEFORE }, { "before", BEFORE },
{ "begin", BEGIN_TRANS }, { "begin", BEGIN_TRANS },
{ "between", BETWEEN }, { "between", BETWEEN },
{ "binary", BINARY }, { "binary", BINARY },
{ "both", BOTH },
{ "by", BY }, { "by", BY },
{ "cast", CAST }, { "cast", CAST },
{ "change", CHANGE }, { "change", CHANGE },
@ -62,70 +63,89 @@ static ScanKeyword ScanKeywords[] = {
{ "constraint", CONSTRAINT }, { "constraint", CONSTRAINT },
{ "copy", COPY }, { "copy", COPY },
{ "create", CREATE }, { "create", CREATE },
{ "cross", CROSS },
{ "current", CURRENT }, { "current", CURRENT },
{ "cursor", CURSOR }, { "cursor", CURSOR },
{ "database", DATABASE }, { "database", DATABASE },
{ "day", DAYINTERVAL },
{ "declare", DECLARE }, { "declare", DECLARE },
{ "default", DEFAULT }, { "default", DEFAULT },
{ "delete", DELETE }, { "delete", DELETE },
{ "delimiters", DELIMITERS }, { "delimiters", DELIMITERS },
{ "desc", DESC }, { "desc", DESC },
{ "distinct", DISTINCT }, { "distinct", DISTINCT },
{ "do", DO }, { "do", DO },
{ "drop", DROP }, { "drop", DROP },
{ "end", END_TRANS }, { "end", END_TRANS },
{ "execute", EXECUTE }, { "execute", EXECUTE },
{ "exists", EXISTS },
{ "explain", EXPLAIN }, { "explain", EXPLAIN },
{ "extend", EXTEND }, { "extend", EXTEND },
{ "extract", EXTRACT },
{ "fetch", FETCH }, { "fetch", FETCH },
{ "for", FOR }, { "for", FOR },
{ "forward", FORWARD }, { "forward", FORWARD },
{ "from", FROM }, { "from", FROM },
{ "full", FULL },
{ "function", FUNCTION }, { "function", FUNCTION },
{ "grant", GRANT }, { "grant", GRANT },
{ "group", GROUP }, { "group", GROUP },
{ "having", HAVING }, { "having", HAVING },
{ "heavy", HEAVY }, { "heavy", HEAVY },
{ "hour", HOURINTERVAL },
{ "in", IN }, { "in", IN },
{ "index", INDEX }, { "index", INDEX },
{ "inherits", INHERITS }, { "inherits", INHERITS },
{ "inner", INNERJOIN },
{ "insert", INSERT }, { "insert", INSERT },
{ "instead", INSTEAD }, { "instead", INSTEAD },
{ "interval", INTERVAL },
{ "into", INTO }, { "into", INTO },
{ "is", IS }, { "is", IS },
{ "isnull", ISNULL }, { "isnull", ISNULL },
{ "join", JOIN },
{ "language", LANGUAGE }, { "language", LANGUAGE },
{ "leading", LEADING },
{ "left", LEFT },
{ "light", LIGHT }, { "light", LIGHT },
{ "like", LIKE }, { "like", LIKE },
{ "listen", LISTEN }, { "listen", LISTEN },
{ "load", LOAD }, { "load", LOAD },
{ "local", LOCAL },
{ "merge", MERGE }, { "merge", MERGE },
{ "minute", MINUTEINTERVAL },
{ "month", MONTHINTERVAL },
{ "move", MOVE }, { "move", MOVE },
{ "natural", NATURAL },
{ "new", NEW }, { "new", NEW },
{ "none", NONE }, { "none", NONE },
{ "not", NOT }, { "not", NOT },
{ "nothing", NOTHING }, { "nothing", NOTHING },
{ "notify", NOTIFY }, { "notify", NOTIFY },
{ "notnull", NOTNULL }, { "notnull", NOTNULL },
{ "null", PNULL }, { "null", PNULL },
{ "oids", OIDS }, { "oids", OIDS },
{ "on", ON }, { "on", ON },
{ "operator", OPERATOR }, { "operator", OPERATOR },
{ "option", OPTION }, { "option", OPTION },
{ "or", OR }, { "or", OR },
{ "order", ORDER }, { "order", ORDER },
{ "privileges", PRIVILEGES }, { "outer", OUTERJOIN },
{ "public", PUBLIC }, { "position", POSITION },
{ "privileges", PRIVILEGES },
{ "public", PUBLIC },
{ "purge", PURGE }, { "purge", PURGE },
{ "recipe", RECIPE }, { "recipe", RECIPE },
{ "rename", RENAME }, { "rename", RENAME },
{ "replace", REPLACE }, { "replace", REPLACE },
{ "reset", RESET }, { "reset", RESET },
{ "retrieve", RETRIEVE }, { "retrieve", RETRIEVE },
{ "returns", RETURNS }, { "returns", RETURNS },
{ "revoke", REVOKE }, { "revoke", REVOKE },
{ "right", RIGHT },
{ "rollback", ROLLBACK }, { "rollback", ROLLBACK },
{ "rule", RULE }, { "rule", RULE },
{ "second", SECONDINTERVAL },
{ "select", SELECT }, { "select", SELECT },
{ "sequence", SEQUENCE }, { "sequence", SEQUENCE },
{ "set", SET }, { "set", SET },
@ -134,11 +154,16 @@ static ScanKeyword ScanKeywords[] = {
{ "stdin", STDIN }, { "stdin", STDIN },
{ "stdout", STDOUT }, { "stdout", STDOUT },
{ "store", STORE }, { "store", STORE },
{ "substring", SUBSTRING },
{ "table", TABLE }, { "table", TABLE },
{ "time", TIME },
{ "to", TO }, { "to", TO },
{ "transaction", TRANSACTION }, { "transaction", TRANSACTION },
{ "trailing", TRAILING },
{ "trim", TRIM },
{ "type", P_TYPE }, { "type", P_TYPE },
{ "unique", UNIQUE }, { "union", UNION },
{ "unique", UNIQUE },
{ "update", UPDATE }, { "update", UPDATE },
{ "using", USING }, { "using", USING },
{ "vacuum", VACUUM }, { "vacuum", VACUUM },
@ -149,6 +174,8 @@ static ScanKeyword ScanKeywords[] = {
{ "where", WHERE }, { "where", WHERE },
{ "with", WITH }, { "with", WITH },
{ "work", WORK }, { "work", WORK },
{ "year", YEARINTERVAL },
{ "zone", ZONE },
}; };
ScanKeyword * ScanKeyword *