DB2 Everyplace reserved words

The following DB2 Everyplace reserved words cannot be used as identifiers unless they are specified as delimited identifiers. For example:

The following statement will cause an SQL error:

CREATE TABLE tab1 (select int)

Uses double quotation marks and will not cause a SQL error:

CREATE TABLE tab1 ("select" int)

DB2 Everyplace reserved words

ALL, AND, AS, ASC, 
BEGIN, BLOB, BY, 
DATABASE
CALL, CHAR, CHAR, CHECK, COMMIT, CONCAT, CREATE, CURRENT, 
DATE, DECIMAL, DEFAULT, DELETE, DESC, DISTINCT, DROP, 
ENCRYPT
FETCH, FOR, FOREIGN, FROM, 
GRANT, GROUP, 
IN, INDEX, INSERT, INT, INTEGER, INTO, IS, 
KEY, 
LIKE, LIMIT, 
NEW, NOT, NULL, 
OF, ON, ONLY, OR, ORDER, 
PRIMARY, 
READ, REFERENCES, REORG,REVOKE,ROLLBACK, 
SELECT, SET, SMALLINT, 
TABLE, TIME, TIMESTAMP, TO,TRANSACTION 
UPDATE, UPSERT, USING
VALUES, VARCHAR, 
WHERE, WITH

For future compatibility, do not use the following IBM SQL and ISO/ANSI SQL92 reserved words as identifiers. The IBM SQL reserved words that are not currently used by DB2 Everyplace are:

ACQUIRE ADD AFTER ALIAS ALLOCATE 
ALLOW ALTER ANY ASUTIME AUDIT AUTHORIZATION 
AUX AUXILIARY AVG BEFORE BETWEEN BINARY 
BUFFERPOOL CALLED CAPTURE CASCADED CASE 
CAST CCSID CHARACTER CLOSE CLUSTER COLLECTION 
COLLID COLUMN COMMENT CONDITION CONNECT 
CONNECTION CONSTRAINT CONTAINS CONTINUE 
COUNT COUNT_BIG CROSS CURRENT_DATE CURRENT_LC_PATH 
CURRENT_PATH CURRENT_SERVER CURRENT_TIME 
CURRENT_TIMESTAMP CURRENT_TIMEZONE CURRENT_USER 
CURSOR DATA DATABASE DAY DAYS DBA DBINFO 
DBSPACE DB2GENERAL DB2SQL DECLARE DESCRIPTOR 
DETERMINISTIC DISALLOW DISCONNECT DO DOUBLE 
DSSIZE DYNAMIC EDITPROC ELSE ELSEIF END 
END-EXEC ERASE ESCAPE EXCEPT EXCEPTION 
EXCLUSIVE EXECUTE EXISTS EXIT EXPLAIN 
EXTERNAL FENCED  FIELDPROC FILE FINAL FREE 
FULL FUNCTION GENERAL GENERATED GO GOTO 
GRANT GRAPHIC HANDLER HAVING HOUR HOURS 
IDENTIFIED IF IMMEDIATE INDICATOR INNER 
INOUT INSENSITIVE INTEGRITY INTERSECT 
ISOBID ISOLATION JAVA JOIN LABEL LANGUAGE 
LC_CTYPE LEAVE LEFT LINKTYPE LOCAL LOCALE 
LOCATOR LOCATORS LOCK LOCKSIZE LONG LOOP 
MAX MICROSECOND MICROSECONDS MIN MINUTE 
MINUTES MODE MODIFIES MONTH MONTHS NAME 
NAMED NHEADER NO NODENAME NODENUMBER NULLS 
NUMPARTS OBID OPEN OPTIMIZATION OPTIMIZE 
OPTION OUT OUTER PACKAGE PAGE PAGES 
PARAMETER PART PARTITION PATH PCTFREE 
PCTINDEX PIECESIZE PLAN POSITION PRECISION 
PREPARE PRIQTY PRIVATE PRIVILEGES PROCEDURE 
PROGRAM PSID PUBLIC QUERYNO READS RECOVERY 
RELEASE RENAME REPEAT RESET RESOURCE RESTRICT 
RESULT RETURN RETURNS REVOKE RIGHT ROW ROWS 
RRN RUN SCHEDULE SCHEMA SCRATCHPAD SECOND 
SECONDS SECQTY SECURITY SHARE SIMPLE SOME 
SOURCE SPECIFIC SQL STANDARD STATIC STATISTICS 
STAY STOGROUP STORES STORPOOL STYLE SUBPAGES 
SUBSTRING SUM SYNONYM TABLESPACE THEN TO 
TRANSACTION TRIGGER TRIM TYPE UNDO UNION 
UNIQUE UNTIL USAGE USER USING VALIDPROC 
VARIABLE VARIANT VCAT VIEW VOLUMES WHEN 
WHILE WLM WORK WRITE YEAR YEARS

The ISO/ANS SQL92 reserved words that are not used by the IBM SQL are as follows.

ABSOLUTE ACTION ARE ASSERTION AT BIT_LENGTH 
BOTH CATALOG CHAR_LENGTH CHARACTER_LENGTH 
COALESCE COLLATE COLLATION CONSTRAINTS CONVERT 
CORRESPONDING DEALLOCATE DEC DEFERRABLE DEFERRED 
DESCRIBE DIAGNOSTICS DOMAIN EXEC EXTRACT FALSE 
FIRST FLOAT FOUND FULL GET GLOBAL IDENTITY 
INITIALLY INPUT INTERVAL LAST LEADING LEVEL 
LOWER MATCH MODULE NAMES NATIONAL NATURAL 
NCHAR NEXT NULLIF NUMERIC OCTET_LENGTH OUTPUT 
OVERLAPS PAD PARTIAL PRESERVE PRIOR REAL 
RELATIVE SCROLL SECTION SESSION SESSION_USER 
SIZE SPACE SQLCODE SQLERROR SQLSTATE SYSTEM_USER 
TEMPORARY TIMEZONE_HOUR TIMEZONE_MINUTE 
TRAILING TRANSLATION TRUE UNKNOWN UPPER 
VALUE VARYING WHENEVER ZONE
 

Související odkazy