From c29ba98189190288c2251c6073c13c6234479e5c Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 14 May 2019 09:56:40 +0200 Subject: [PATCH] Update SQL keywords list to SQL:2016 Per previous convention (see ace397e9d24eddc56e7dffa921f506117b602d78), drop SQL:2008 and only keep the latest two standards and SQL-92. Note: SQL:2016-2 lists a large number of non-reserved keywords that are really just information_schema column names related to new features. Those kinds of thing have not previously been listed as keywords, and this was apparently done here by mistake, since these keywords have been removed again in post-2016 working drafts. So in order to avoid bloating the keywords table unnecessarily, I have omitted these erroneous keywords here. --- doc/src/sgml/generate-keywords-table.pl | 2 +- ...eserved.txt => sql2016-02-nonreserved.txt} | 34 +++++++++- ...2-reserved.txt => sql2016-02-reserved.txt} | 64 ++++++++++++++++++- ...eserved.txt => sql2016-09-nonreserved.txt} | 0 ...9-reserved.txt => sql2016-09-reserved.txt} | 0 ...eserved.txt => sql2016-14-nonreserved.txt} | 2 - ...4-reserved.txt => sql2016-14-reserved.txt} | 0 7 files changed, 95 insertions(+), 7 deletions(-) rename doc/src/sgml/keywords/{sql2008-02-nonreserved.txt => sql2016-02-nonreserved.txt} (90%) rename doc/src/sgml/keywords/{sql2008-02-reserved.txt => sql2016-02-reserved.txt} (82%) rename doc/src/sgml/keywords/{sql2008-09-nonreserved.txt => sql2016-09-nonreserved.txt} (100%) rename doc/src/sgml/keywords/{sql2008-09-reserved.txt => sql2016-09-reserved.txt} (100%) rename doc/src/sgml/keywords/{sql2008-14-nonreserved.txt => sql2016-14-nonreserved.txt} (93%) rename doc/src/sgml/keywords/{sql2008-14-reserved.txt => sql2016-14-reserved.txt} (100%) diff --git a/doc/src/sgml/generate-keywords-table.pl b/doc/src/sgml/generate-keywords-table.pl index 611c22bdd3e..e948d5fb5e9 100644 --- a/doc/src/sgml/generate-keywords-table.pl +++ b/doc/src/sgml/generate-keywords-table.pl @@ -6,7 +6,7 @@ use strict; use warnings; -my @sql_versions = reverse sort ('1992', '2008', '2011'); +my @sql_versions = reverse sort ('1992', '2011', '2016'); my $srcdir = $ARGV[0]; diff --git a/doc/src/sgml/keywords/sql2008-02-nonreserved.txt b/doc/src/sgml/keywords/sql2016-02-nonreserved.txt similarity index 90% rename from doc/src/sgml/keywords/sql2008-02-nonreserved.txt rename to doc/src/sgml/keywords/sql2016-02-nonreserved.txt index 9c30628355f..f39e52e475d 100644 --- a/doc/src/sgml/keywords/sql2008-02-nonreserved.txt +++ b/doc/src/sgml/keywords/sql2016-02-nonreserved.txt @@ -19,6 +19,7 @@ CASCADE CATALOG CATALOG_NAME CHAIN +CHAINING CHARACTER_SET_CATALOG CHARACTER_SET_NAME CHARACTER_SET_SCHEMA @@ -30,10 +31,12 @@ COLLATION COLLATION_CATALOG COLLATION_NAME COLLATION_SCHEMA +COLUMNS COLUMN_NAME COMMAND_FUNCTION COMMAND_FUNCTION_CODE COMMITTED +CONDITIONAL CONDITION_NUMBER CONNECTION CONNECTION_NAME @@ -42,7 +45,6 @@ CONSTRAINT_NAME CONSTRAINT_SCHEMA CONSTRAINTS CONSTRUCTOR -CONTAINS CONTINUE CURSOR_NAME DATA @@ -63,15 +65,21 @@ DISPATCH DOMAIN DYNAMIC_FUNCTION DYNAMIC_FUNCTION_CODE -EQUALS +ENCODING +ENFORCED +ERROR EXCLUDE EXCLUDING +EXPRESSION FINAL +FINISH FIRST FLAG FOLLOWING +FORMAT FORTRAN FOUND +FULFILL G GENERAL GENERATED @@ -81,6 +89,7 @@ GRANTED HIERARCHY IGNORE IMMEDIATE +IMMEDIATELY IMPLEMENTATION INCLUDING INCREMENT @@ -91,8 +100,11 @@ INSTANTIABLE INSTEAD INVOKER ISOLATION +JSON K +KEEP KEY +KEYS KEY_MEMBER KEY_TYPE LAST @@ -111,6 +123,7 @@ MORE MUMPS NAME NAMES +NESTED NESTING NEXT NFC @@ -129,6 +142,7 @@ ORDERING ORDINALITY OTHERS OUTPUT +OVERFLOW OVERRIDING P PAD @@ -140,14 +154,21 @@ PARAMETER_SPECIFIC_NAME PARAMETER_SPECIFIC_SCHEMA PARTIAL PASCAL +PASS +PASSING +PAST PATH PLACING +PLAN PLI PRECEDING PRESERVE PRIOR +PRIVATE PRIVILEGES +PRUNE PUBLIC +QUOTES READ RELATIVE REPEATABLE @@ -158,12 +179,14 @@ RETURNED_CARDINALITY RETURNED_LENGTH RETURNED_OCTET_LENGTH RETURNED_SQLSTATE +RETURNING ROLE ROUTINE ROUTINE_CATALOG ROUTINE_NAME ROUTINE_SCHEMA ROW_COUNT +SCALAR SCALE SCHEMA SCHEMA_NAME @@ -185,12 +208,14 @@ SPACE SPECIFIC_NAME STATE STATEMENT +STRING STRUCTURE STYLE SUBCLASS_ORIGIN T TABLE_NAME TEMPORARY +THROUGH TIES TOP_LEVEL_COUNT TRANSACTION @@ -205,6 +230,7 @@ TRIGGER_SCHEMA TYPE UNBOUNDED UNCOMMITTED +UNCONDITIONAL UNDER UNNAMED USAGE @@ -212,7 +238,11 @@ USER_DEFINED_TYPE_CATALOG USER_DEFINED_TYPE_CODE USER_DEFINED_TYPE_NAME USER_DEFINED_TYPE_SCHEMA +UTF16 +UTF32 +UTF8 VIEW WORK +WRAPPER WRITE ZONE diff --git a/doc/src/sgml/keywords/sql2008-02-reserved.txt b/doc/src/sgml/keywords/sql2016-02-reserved.txt similarity index 82% rename from doc/src/sgml/keywords/sql2008-02-reserved.txt rename to doc/src/sgml/keywords/sql2016-02-reserved.txt index b4a2c64af99..ae110123881 100644 --- a/doc/src/sgml/keywords/sql2008-02-reserved.txt +++ b/doc/src/sgml/keywords/sql2016-02-reserved.txt @@ -1,4 +1,5 @@ ABS +ACOS ALL ALLOCATE ALTER @@ -7,14 +8,19 @@ ANY ARE ARRAY ARRAY_AGG +ARRAY_MAX_CARDINALITY AS ASENSITIVE +ASIN ASYMMETRIC AT +ATAN ATOMIC AUTHORIZATION AVG BEGIN +BEGIN_FRAME +BEGIN_PARTITION BETWEEN BIGINT BINARY @@ -35,6 +41,7 @@ CHAR_LENGTH CHARACTER CHARACTER_LENGTH CHECK +CLASSIFIER CLOB CLOSE COALESCE @@ -45,9 +52,13 @@ COMMIT CONDITION CONNECT CONSTRAINT +CONTAINS CONVERT +COPY CORR CORRESPONDING +COS +COSH COUNT COVAR_POP COVAR_SAMP @@ -61,6 +72,7 @@ CURRENT_DATE CURRENT_DEFAULT_TRANSFORM_GROUP CURRENT_PATH CURRENT_ROLE +CURRENT_ROW CURRENT_SCHEMA CURRENT_TIME CURRENT_TIMESTAMP @@ -73,8 +85,10 @@ DAY DEALLOCATE DEC DECIMAL +DECFLOAT DECLARE DEFAULT +DEFINE DELETE DENSE_RANK DEREF @@ -88,8 +102,12 @@ DYNAMIC EACH ELEMENT ELSE +EMPTY END +END_FRAME +END_PARTITION END-EXEC +EQUALS ESCAPE EVERY EXCEPT @@ -107,6 +125,7 @@ FLOAT FLOOR FOR FOREIGN +FRAME_ROW FREE FROM FULL @@ -117,12 +136,14 @@ GLOBAL GRANT GROUP GROUPING +GROUPS HAVING HOLD HOUR IDENTITY IN INDICATOR +INITIAL INNER INOUT INSENSITIVE @@ -135,6 +156,15 @@ INTERVAL INTO IS JOIN +JSON_ARRAY +JSON_ARRAYAGG +JSON_EXISTS +JSON_OBJECT +JSON_OBJECTAGG +JSON_QUERY +JSON_TABLE +JSON_TABLE_PRIMITIVE +JSON_VALUE LAG LANGUAGE LARGE @@ -145,14 +175,20 @@ LEADING LEFT LIKE LIKE_REGEX +LISTAGG LN LOCAL LOCALTIME LOCALTIMESTAMP +LOG +LOG10 LOWER MATCH +MATCH_NUMBER +MATCH_RECOGNIZE +MATCHES MAX -MAX_CARDINALITY +MEASURES MEMBER MERGE METHOD @@ -182,7 +218,9 @@ OCCURRENCES_REGEX OF OFFSET OLD +OMIT ON +ONE ONLY OPEN OR @@ -194,16 +232,24 @@ OVERLAPS OVERLAY PARAMETER PARTITION +PATTERN +PER +PERCENT PERCENT_RANK PERCENTILE_CONT PERCENTILE_DISC +PERIOD +PERMUTE +PORTION POSITION POSITION_REGEX POWER +PRECEDES PRECISION PREPARE PRIMARY PROCEDURE +PTF RANGE RANK READS @@ -232,16 +278,22 @@ ROLLUP ROW ROW_NUMBER ROWS +RUNNING SAVEPOINT SCOPE SCROLL SEARCH SECOND +SEEK SELECT SENSITIVE SESSION_USER SET +SHOW SIMILAR +SIN +SINH +SKIP SMALLINT SOME SPECIFIC @@ -256,14 +308,19 @@ STATIC STDDEV_POP STDDEV_SAMP SUBMULTISET +SUBSET SUBSTRING SUBSTRING_REGEX +SUCCEEDS SUM SYMMETRIC SYSTEM +SYSTEM_TIME SYSTEM_USER TABLE TABLESAMPLE +TAN +TANH THEN TIME TIMESTAMP @@ -276,14 +333,15 @@ TRANSLATE_REGEX TRANSLATION TREAT TRIGGER -TRUNCATE TRIM TRIM_ARRAY TRUE +TRUNCATE UESCAPE UNION UNIQUE UNKNOWN +UNMATCHED UNNEST UPDATE UPPER @@ -291,11 +349,13 @@ USER USING VALUE VALUES +VALUE_OF VAR_POP VAR_SAMP VARBINARY VARCHAR VARYING +VERSIONING WHEN WHENEVER WHERE diff --git a/doc/src/sgml/keywords/sql2008-09-nonreserved.txt b/doc/src/sgml/keywords/sql2016-09-nonreserved.txt similarity index 100% rename from doc/src/sgml/keywords/sql2008-09-nonreserved.txt rename to doc/src/sgml/keywords/sql2016-09-nonreserved.txt diff --git a/doc/src/sgml/keywords/sql2008-09-reserved.txt b/doc/src/sgml/keywords/sql2016-09-reserved.txt similarity index 100% rename from doc/src/sgml/keywords/sql2008-09-reserved.txt rename to doc/src/sgml/keywords/sql2016-09-reserved.txt diff --git a/doc/src/sgml/keywords/sql2008-14-nonreserved.txt b/doc/src/sgml/keywords/sql2016-14-nonreserved.txt similarity index 93% rename from doc/src/sgml/keywords/sql2008-14-nonreserved.txt rename to doc/src/sgml/keywords/sql2016-14-nonreserved.txt index 317f651f0ee..00c88ffc57d 100644 --- a/doc/src/sgml/keywords/sql2008-14-nonreserved.txt +++ b/doc/src/sgml/keywords/sql2016-14-nonreserved.txt @@ -5,7 +5,6 @@ BOM COLUMNS CONTENT DOCUMENT -EMPTY ENCODING HEX ID @@ -13,7 +12,6 @@ INDENT LOCATION NAMESPACE NIL -PASSING PATH PRESERVE RETURNING diff --git a/doc/src/sgml/keywords/sql2008-14-reserved.txt b/doc/src/sgml/keywords/sql2016-14-reserved.txt similarity index 100% rename from doc/src/sgml/keywords/sql2008-14-reserved.txt rename to doc/src/sgml/keywords/sql2016-14-reserved.txt