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.
use strict;
use warnings;
-my @sql_versions = reverse sort ('1992', '2008', '2011');
+my @sql_versions = reverse sort ('1992', '2011', '2016');
my $srcdir = $ARGV[0];
CATALOG
CATALOG_NAME
CHAIN
+CHAINING
CHARACTER_SET_CATALOG
CHARACTER_SET_NAME
CHARACTER_SET_SCHEMA
COLLATION_CATALOG
COLLATION_NAME
COLLATION_SCHEMA
+COLUMNS
COLUMN_NAME
COMMAND_FUNCTION
COMMAND_FUNCTION_CODE
COMMITTED
+CONDITIONAL
CONDITION_NUMBER
CONNECTION
CONNECTION_NAME
CONSTRAINT_SCHEMA
CONSTRAINTS
CONSTRUCTOR
-CONTAINS
CONTINUE
CURSOR_NAME
DATA
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
HIERARCHY
IGNORE
IMMEDIATE
+IMMEDIATELY
IMPLEMENTATION
INCLUDING
INCREMENT
INSTEAD
INVOKER
ISOLATION
+JSON
K
+KEEP
KEY
+KEYS
KEY_MEMBER
KEY_TYPE
LAST
MUMPS
NAME
NAMES
+NESTED
NESTING
NEXT
NFC
ORDINALITY
OTHERS
OUTPUT
+OVERFLOW
OVERRIDING
P
PAD
PARAMETER_SPECIFIC_SCHEMA
PARTIAL
PASCAL
+PASS
+PASSING
+PAST
PATH
PLACING
+PLAN
PLI
PRECEDING
PRESERVE
PRIOR
+PRIVATE
PRIVILEGES
+PRUNE
PUBLIC
+QUOTES
READ
RELATIVE
REPEATABLE
RETURNED_LENGTH
RETURNED_OCTET_LENGTH
RETURNED_SQLSTATE
+RETURNING
ROLE
ROUTINE
ROUTINE_CATALOG
ROUTINE_NAME
ROUTINE_SCHEMA
ROW_COUNT
+SCALAR
SCALE
SCHEMA
SCHEMA_NAME
SPECIFIC_NAME
STATE
STATEMENT
+STRING
STRUCTURE
STYLE
SUBCLASS_ORIGIN
T
TABLE_NAME
TEMPORARY
+THROUGH
TIES
TOP_LEVEL_COUNT
TRANSACTION
TYPE
UNBOUNDED
UNCOMMITTED
+UNCONDITIONAL
UNDER
UNNAMED
USAGE
USER_DEFINED_TYPE_CODE
USER_DEFINED_TYPE_NAME
USER_DEFINED_TYPE_SCHEMA
+UTF16
+UTF32
+UTF8
VIEW
WORK
+WRAPPER
WRITE
ZONE
ABS
+ACOS
ALL
ALLOCATE
ALTER
ARE
ARRAY
ARRAY_AGG
+ARRAY_MAX_CARDINALITY
AS
ASENSITIVE
+ASIN
ASYMMETRIC
AT
+ATAN
ATOMIC
AUTHORIZATION
AVG
BEGIN
+BEGIN_FRAME
+BEGIN_PARTITION
BETWEEN
BIGINT
BINARY
CHARACTER
CHARACTER_LENGTH
CHECK
+CLASSIFIER
CLOB
CLOSE
COALESCE
CONDITION
CONNECT
CONSTRAINT
+CONTAINS
CONVERT
+COPY
CORR
CORRESPONDING
+COS
+COSH
COUNT
COVAR_POP
COVAR_SAMP
CURRENT_DEFAULT_TRANSFORM_GROUP
CURRENT_PATH
CURRENT_ROLE
+CURRENT_ROW
CURRENT_SCHEMA
CURRENT_TIME
CURRENT_TIMESTAMP
DEALLOCATE
DEC
DECIMAL
+DECFLOAT
DECLARE
DEFAULT
+DEFINE
DELETE
DENSE_RANK
DEREF
EACH
ELEMENT
ELSE
+EMPTY
END
+END_FRAME
+END_PARTITION
END-EXEC
+EQUALS
ESCAPE
EVERY
EXCEPT
FLOOR
FOR
FOREIGN
+FRAME_ROW
FREE
FROM
FULL
GRANT
GROUP
GROUPING
+GROUPS
HAVING
HOLD
HOUR
IDENTITY
IN
INDICATOR
+INITIAL
INNER
INOUT
INSENSITIVE
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
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
OF
OFFSET
OLD
+OMIT
ON
+ONE
ONLY
OPEN
OR
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
ROW
ROW_NUMBER
ROWS
+RUNNING
SAVEPOINT
SCOPE
SCROLL
SEARCH
SECOND
+SEEK
SELECT
SENSITIVE
SESSION_USER
SET
+SHOW
SIMILAR
+SIN
+SINH
+SKIP
SMALLINT
SOME
SPECIFIC
STDDEV_POP
STDDEV_SAMP
SUBMULTISET
+SUBSET
SUBSTRING
SUBSTRING_REGEX
+SUCCEEDS
SUM
SYMMETRIC
SYSTEM
+SYSTEM_TIME
SYSTEM_USER
TABLE
TABLESAMPLE
+TAN
+TANH
THEN
TIME
TIMESTAMP
TRANSLATION
TREAT
TRIGGER
-TRUNCATE
TRIM
TRIM_ARRAY
TRUE
+TRUNCATE
UESCAPE
UNION
UNIQUE
UNKNOWN
+UNMATCHED
UNNEST
UPDATE
UPPER
USING
VALUE
VALUES
+VALUE_OF
VAR_POP
VAR_SAMP
VARBINARY
VARCHAR
VARYING
+VERSIONING
WHEN
WHENEVER
WHERE
COLUMNS
CONTENT
DOCUMENT
-EMPTY
ENCODING
HEX
ID
LOCATION
NAMESPACE
NIL
-PASSING
PATH
PRESERVE
RETURNING