Lists of Keywords

List of SQL Keywords

Fred Toussi

The HSQL Development Group

$Revision: 847 $

$Date: 2009-01-19 22:24:49 +0000 (Mon, 19 Jan 2009) $

Table of Contents

List of SQL Standard Keywords
List of SQL Keywords Disallowed as HyperSQL Identifiers

List of SQL Standard Keywords

According to the SQL Standard, the SQL Language keywords cannot be used as identifiers (names of database objects such as columns and tables). HyperSQL has two modes of operation, which are selected with the SET DATABASE SQL NAMES { TRUE | FALSE } to allow or disallow the keywords as identifiers. The default mode is FALSE and allows the use of most keywords as identifiers. Even in this mode, keywords cannot be used as USER or ROLE identifiers.

ABS ALL ALLOCATE ALTER AND ANY ARE ARRAY AS ASENSITIVE ASYMMETRIC AT ATOMIC AUTHORIZATION AVG

BEGIN BETWEEN BIGINT BINARY BLOB BOOLEAN BOTH BY

CALL CALLED CARDINALITY CASCADED CASE CAST CEIL CEILING CHAR CHAR_LENGTH CHARACTER CHARACTER_LENGTH CHECK CLOB CLOSE COALESCE COLLATE COLLECT COLUMN COMMIT COMPARABLE CONDITION CONNECT CONSTRAINT CONVERT CORR CORRESPONDING COUNT COVAR_POP COVAR_SAMP CREATE CROSS CUBE CUME_DIST CURRENT CURRENT_CATALOG CURRENT_DATE CURRENT_DEFAULT_TRANSFORM_GROUP CURRENT_PATH CURRENT_ROLE CURRENT_SCHEMA CURRENT_TIME CURRENT_TIMESTAMP CURRENT_TRANSFORM_GROUP_FOR_TYPE CURRENT_USER CURSOR CYCLE

DATE DAY DEALLOCATE DEC DECIMAL DECLARE DEFAULT DELETE DENSE_RANK DEREF DESCRIBE DETERMINISTIC DISCONNECT DISTINCT DO DOUBLE DROP DYNAMIC

EACH ELEMENT ELSE ELSEIF END END_EXEC ESCAPE EVERY EXCEPT EXEC EXECUTE EXISTS EXIT EXP EXTERNAL EXTRACT

FALSE FETCH FILTER FIRST_VALUE FLOAT FLOOR FOR FOREIGN FREE FROM FULL FUNCTION FUSION

GET GLOBAL GRANT GROUP GROUPING

HANDLER HAVING HOLD HOUR

IDENTITY IN INDICATOR INNER INOUT INSENSITIVE INSERT INT INTEGER INTERSECT INTERSECTION INTERVAL INTO IS ITERATE

JOIN

LAG

LANGUAGE LARGE LAST_VALUE LATERAL LEAD LEADING LEAVE LEFT LIKE LIKE_REGEX LN LOCAL LOCALTIME LOCALTIMESTAMP LOOP LOWER

MATCH MAX MAX_CARDINALITY MEMBER MERGE METHOD MIN MINUTE MOD MODIFIES MODULE MONTH MULTISET

NATIONAL NATURAL NCHAR NCLOB NEW NO NONE NORMALIZE NOT NTH_VALUE NTILE NULL NULLIF NUMERIC

OCCURRENCES_REGEX OCTET_LENGTH OF OFFSET OLD ON ONLY OPEN OR ORDER OUT OUTER OVER OVERLAPS OVERLAY

PARAMETER PARTITION PERCENT_RANK PERCENTILE_CONT PERCENTILE_DISC POSITION POSITION_REGEX POWER PRECISION PREPARE PRIMARY PROCEDURE

RANGE RANK READS REAL RECURSIVE REF REFERENCES REFERENCING REGR_AVGX REGR_AVGY REGR_COUNT REGR_INTERCEPT REGR_R2 REGR_SLOPE REGR_SXX REGR_SXY REGR_SYY RELEASE REPEAT RESIGNAL RESULT RETURN RETURNS REVOKE RIGHT ROLLBACK ROLLUP ROW ROW_NUMBER ROWS

SAVEPOINT SCOPE SCROLL SEARCH SECOND SELECT SENSITIVE SESSION_USER SET SIGNAL SIMILAR SMALLINT SOME SPECIFIC SPECIFICTYPE SQL SQLEXCEPTION SQLSTATE SQLWARNING SQRT STACKED START STATIC STDDEV_POP STDDEV_SAMP SUBMULTISET SUBSTRING SUBSTRING_REGEX SUM SYMMETRIC SYSTEM SYSTEM_USER

TABLE TABLESAMPLE THEN TIME TIMESTAMP TIMEZONE_HOUR TIMEZONE_MINUTE TO TRAILING TRANSLATE TRANSLATE_REGEX TRANSLATION TREAT TRIGGER TRIM TRIM_ARRAY TRUE TRUNCATE

UESCAPE UNDO UNION UNIQUE UNKNOWN UNNEST UNTIL UPDATE UPPER USER USING

VALUE VALUES VAR_POP VAR_SAMP VARBINARY VARCHAR VARYING

WHEN WHENEVER WHERE WIDTH_BUCKET WINDOW WITH WITHIN WITHOUT WHILE

YEAR

List of SQL Keywords Disallowed as HyperSQL Identifiers

A subset of SQL Standard keywords cannot be used at all as HyperSQL identifiers. The keywords are as follows:

ADMIN AND ALL ANY AS AT AVG

BETWEEN BOTH BY

CALL CASE CAST COALESCE CORRESPONDING CONVERT COUNT CREATE CROSS

DISTINCT DROP

ELSE END EVERY EXISTS EXCEPT

FOR FROM FULL

GRANT GROUP

HAVING

IN INNER INTERSECT INTO IS

JOIN

LEFT LEADING LIKE

MAX MIN

NATURAL NOT NULLIF

ON ORDER OR OUTER

PRIMARY

REFERENCES RIGHT

SELECT SET SOME STDDEV_POP STDDEV_SAMP SUM

TABLE THEN TO TRAILING TRIGGER

UNION UNIQUE USING

VALUES VAR_POP VAR_SAMP

WHEN WHERE WITH


$Revision: 3601 $