The following is a list of all reserved words in MariaDB.
Reserved words cannot be used as Identifiers, unless they are quoted.
The definitive list of reserved words for each version can be found by examining the sql/lex.h
and sql/sql_yacc.yy
files.
Keyword | Notes |
---|---|
ACCESSIBLE | |
ADD | |
ALL | |
ALTER | |
ANALYZE | |
AND | |
AS | |
ASC | |
ASENSITIVE | |
BEFORE | |
BETWEEN | |
BIGINT | |
BINARY | |
BLOB | |
BOTH | |
BY | |
CALL | |
CASCADE | |
CASE | |
CHANGE | |
CHAR | |
CHARACTER | |
CHECK | |
COLLATE | |
COLUMN | |
CONDITION | |
CONSTRAINT | |
CONTINUE | |
CONVERT | |
CREATE | |
CROSS | |
CURRENT_DATE | |
CURRENT_ROLE | Added in MariaDB 10.0.5 |
CURRENT_TIME | |
CURRENT_TIMESTAMP | |
CURRENT_USER | |
CURSOR | |
DATABASE | |
DATABASES | |
DAY_HOUR | |
DAY_MICROSECOND | |
DAY_MINUTE | |
DAY_SECOND | |
DEC | |
DECIMAL | |
DECLARE | |
DEFAULT | |
DELAYED | |
DELETE | |
DESC | |
DESCRIBE | |
DETERMINISTIC | |
DISTINCT | |
DISTINCTROW | |
DIV | |
DO_DOMAIN_IDS | Added in MariaDB 10.1.2 |
DOUBLE | |
DROP | |
DUAL | |
EACH | |
ELSE | |
ELSEIF | |
ENCLOSED | |
ESCAPED | |
EXCEPT | Added in MariaDB 10.3.0 |
EXISTS | |
EXIT | |
EXPLAIN | |
FALSE | |
FETCH | |
FLOAT | |
FLOAT4 | |
FLOAT8 | |
FOR | |
FORCE | |
FOREIGN | |
FROM | |
FULLTEXT | |
GENERAL | |
GRANT | |
GROUP | |
HAVING | |
HIGH_PRIORITY | |
HOUR_MICROSECOND | |
HOUR_MINUTE | |
HOUR_SECOND | |
IF | |
IGNORE | |
IGNORE_DOMAIN_IDS | Added in MariaDB 10.1.2 |
IGNORE_SERVER_IDS | |
IN | |
INDEX | |
INFILE | |
INNER | |
INOUT | |
INSENSITIVE | |
INSERT | |
INT | |
INT1 | |
INT2 | |
INT3 | |
INT4 | |
INT8 | |
INTEGER | |
INTERSECT | Added in MariaDB 10.3.0 |
INTERVAL | |
INTO | |
IS | |
ITERATE | |
JOIN | |
KEY | |
KEYS | |
KILL | |
LEADING | |
LEAVE | |
LEFT | |
LIKE | |
LIMIT | |
LINEAR | |
LINES | |
LOAD | |
LOCALTIME | |
LOCALTIMESTAMP | |
LOCK | |
LONG | |
LONGBLOB | |
LONGTEXT | |
LOOP | |
LOW_PRIORITY | |
MASTER_HEARTBEAT_PERIOD | |
MASTER_SSL_VERIFY_SERVER_CERT | |
MATCH | |
MAXVALUE | |
MEDIUMBLOB | |
MEDIUMINT | |
MEDIUMTEXT | |
MIDDLEINT | |
MINUTE_MICROSECOND | |
MINUTE_SECOND | |
MOD | |
MODIFIES | |
NATURAL | |
NOT | |
NO_WRITE_TO_BINLOG | |
NULL | |
NUMERIC | |
ON | |
OPTIMIZE | |
OPTION | |
OPTIONALLY | |
OR | |
ORDER | |
OUT | |
OUTER | |
OUTFILE | |
OVER | Added in MariaDB 10.2.0 |
PAGE_CHECKSUM | |
PARSE_VCOL_EXPR | |
PARTITION | Added in MariaDB 10.0 |
POSITION | |
PRECISION | |
PRIMARY | |
PROCEDURE | |
PURGE | |
RANGE | |
READ | |
READS | |
READ_WRITE | |
REAL | |
RECURSIVE | Added in MariaDB 10.2.0 |
REF_SYSTEM_ID | Added in MariaDB 10.1.2 |
REFERENCES | |
REGEXP | |
RELEASE | |
RENAME | |
REPEAT | |
REPLACE | |
REQUIRE | |
RESIGNAL | |
RESTRICT | |
RETURN | |
RETURNING | Added in MariaDB 10.0.5 |
REVOKE | |
RIGHT | |
RLIKE | |
ROWS | Added in MariaDB 10.2.4 |
SCHEMA | |
SCHEMAS | |
SECOND_MICROSECOND | |
SELECT | |
SENSITIVE | |
SEPARATOR | |
SET | |
SHOW | |
SIGNAL | |
SLOW | |
SMALLINT | |
SPATIAL | |
SPECIFIC | |
SQL | |
SQLEXCEPTION | |
SQLSTATE | |
SQLWARNING | |
SQL_BIG_RESULT | |
SQL_CALC_FOUND_ROWS | |
SQL_SMALL_RESULT | |
SSL | |
STARTING | |
STATS_AUTO_RECALC | Added in MariaDB 10.0.4 |
STATS_PERSISTENT | Added in MariaDB 10.0.4 |
STATS_SAMPLE_PAGES | Added in MariaDB 10.0.4 |
STRAIGHT_JOIN | |
TABLE | |
TERMINATED | |
THEN | |
TINYBLOB | |
TINYINT | |
TINYTEXT | |
TO | |
TRAILING | |
TRIGGER | |
TRUE | |
UNDO | |
UNION | |
UNIQUE | |
UNLOCK | |
UNSIGNED | |
UPDATE | |
USAGE | |
USE | |
USING | |
UTC_DATE | |
UTC_TIME | |
UTC_TIMESTAMP | |
VALUES | |
VARBINARY | |
VARCHAR | |
VARCHARACTER | |
VARYING | |
WHEN | |
WHERE | |
WHILE | |
WINDOW | Added in MariaDB 10.2.0. From MariaDB 10.2.12 only disallowed for table aliases. |
WITH | |
WRITE | |
XOR | |
YEAR_MONTH | |
ZEROFILL |
Some keywords are exceptions for historical reasons, and are permitted as unquoted identifiers. These include:
Keyword |
---|
ACTION |
BIT |
DATE |
ENUM |
NO |
TEXT |
TIME |
TIMESTAMP |
In Oracle mode, from MariaDB 10.3, there are a number of extra reserved words:
Keyword | Notes |
---|---|
BODY | |
ELSIF | |
GOTO | |
HISTORY | <= MariaDB 10.3.6 only |
OTHERS | |
PACKAGE | |
PERIOD | <= MariaDB 10.3.6 only |
RAISE | |
ROWTYPE | |
SYSTEM | <= MariaDB 10.3.6 only |
SYSTEM_TIME | <= MariaDB 10.3.6 only |
VERSIONING | <= MariaDB 10.3.6 only |
WITHOUT | <= MariaDB 10.3.6 only |
If the IGNORE_SPACE
SQL_MODE flag is set, function names become reserved words.