ODBC reserved words
Do not use the reserved words listed here (taken from the SQL grammar in Appendix C of the Microsoft ODBC Programmer’s Reference) as identifiers (that is, table or column names), unless you surround the word in double quotation marks (for example, "DATE" or "DESC"). Many ODBC aware products will do this for you. Lotus 123 Release 4 is a notable exception.
| ABS | ABSOLUTE | ACTION | ADA |
| ADD | ALIAS | ALL | ALLOCATE |
| ALTER | AND | ANY | ARE |
| AS | ASC | ASCII | ASSERTION |
| AT | ATAN | AUTHORIZATION | AUTO |
| AVG | BCDDATE | BEGIN | BETWEEN |
| BIT | BIT_LENGTH | BLOB | BLOCKLEN |
| BOTH | BY | CASCADE | CASCADED |
| CASE | CAST | CATALOG | CATALOGUE |
| CBLOB | CEILING | CHAR | CHARACTER |
| CHARACTER_LENGTH | CHAR_LENGTH | CHECK | CLOSE |
| COALESCE | COBOL | COLLATE | COLLATION |
| COLUMN | COMMIT | CONCAT | CONNECT |
| CONNECTION | CONSTRAINT | CONSTRAINTS | CONTINUE |
| CONVERT | CORRESPONDING | COS | COUNT |
| CREATE | CROSS | CURDATE | CURRENT |
| CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP | CURRENT_USER |
| CURSOR | DATABASE | DATE | DATESTAMP |
| DAY | DAYNAME | DAYOFMONTH | DAYOFWEEK |
| DAYOFYEAR | DBCSEND | DBCSSTART | DEALLOCATE |
| DEC | DECIMAL | DECLARE | DEFAULT |
| DEFERRABLE | DEFERRED | DELETE | DESC |
| DESCRIBE | DESCRIPTION | DESCRIPTOR | DIAGNOSTICS |
| DIFFERENCE | DISCONNECT | DISPLAY | DISTINCT |
| DOMAIN | DOUBLE | DROP | DTD |
| ELSE | END | END-EXEC | ESCAPE |
| EXCEPT | EXCEPTION | EXCLUDE | EXEC |
| EXECUTE | EXISTS | EXP | EXPLICIT |
| EXTENT | EXTERNAL | EXTRACT | FALSE |
| FETCH | FIRST | FLAT | FLOAT |
| FLOOR | FOR | FOREIGN | FORTRAN |
| FOUND | FROM | FULL | GET |
| GLOBAL | GO | GOTO | GRANT |
| GROUP | HAVING | HEX | HOUR |
| IBMPACKED | IDENTITY | IFNULL | IMMEDIATE |
| IN | INCLUDE | INDEX | INDICATOR |
| INITIALLY | INNER | INPUT | INSENSITIVE |
| INSERT | INTEGER | INTERNAL_NUMBER | INTERSECT |
| INTERVAL | INTO | IPREFIX | IS |
| ISOLATION | JOIN | KDB | KEY |
| LANGUAGE | LAST | LCASE | LEADING |
| LEFT | LENGTH | LEVEL | LIKE |
| LOCAL | LOCATE | LOG | LONGUSERNAMES |
| LOWER | LTRIM | MATCH | MAX |
| MIN | MINUTE | MOD | MODIFY |
| MODULE | MONTH | MONTHNAME | MUMPS |
| NAME | NAMES | NATIONAL | NATURAL |
| NCHAR | NEXT | NO | NOCOMPACT |
| NOEDIT | NOISE | NONALPHA | NONE |
| NOT | NOW | NULL | NULLIF |
| NUMERIC | OCCURS | OCTET_LENGTH | OF |
| OFFSET | OLD_DATE | ON | ONLY |
| OPEN | OPTION | OR | ORDER |
| OUTER | OUTPUT | OVERLAPS | PACKING |
| PAD | PARTIAL | PASCAL | PATH |
| PERMISSIONS | PLI | POSITION | POSTVAL |
| PRECISION | PREPARE | PRESERVE | PREVAL |
| PRIMARY | PRIOR | PRIORITY | PRIVILEGES |
| PROCEDURE | PUBLIC | QUARTER | RAND |
| RANGE | RAW | RECLEN | REFERENCES |
| RELATIVE | RENAME | REPEAT | RESTRICT |
| REVOKE | RIGHT | ROLLBACK | ROWS |
| RTRIM | SCHEMA | SCROLL | SECOND |
| SECTION | SELECT | SEQUENCE | SERIAL |
| SESSION | SESSION_USER | SET | SIGN |
| SIGNED | SIN | SIZE | SMALLINT |
| SOME | SORTMERGE | SOUNDEX | SPACE |
| SPECIAL | SQL | SQL_TSI_DAY | SQL_TSI_MONTH |
| SQL_TSI_QUARTER | SQL_TSI_WEEK | SQL_TSI_YEAR | SQLCA |
| SQLCODE | SQLERROR | SQLSTATE | SQLWARNING |
| SQRT | STARTBYTE | SUBSTRING | SUM |
| SYSTEM_USER | TABLE | TABLESPACE | TAN |
| TEMPORARY | THEN | TIME | TIMESTAMP |
| TIMESTAMPADD | TIMESTAMPDIFF | TIMEZONE_HOUR | TIMEZONE_MINUTE |
| TO | TOP | TOTALLED | TRAILING |
| TRANSACTION | TRANSLATE | TRANSLATION | TREE |
| TRIM | TRUE | TYPE | UCASE |
| UNION | UNIQUE | UNKNOWN | UNSIGNED |
| UPDATE | UPPER | USAGE | USER |
| USERSTAMP | USING | VALIDATE | VALUE |
| VALUES | VARCHAR | VARYING | VENDOR(MICROSOFT),PRODUCT(ODBC) |
| VIEW | VIRTUAL | WEEK | WHEN |
| WHENEVER | WHERE | WITH | WORD |
| WORK | XML | XMLDATA | YEAR |
| YES |