关键字在 SQL 中有特殊的意义, 例如 SELECT,UPDATE,DELETE,在作为表名跟函数名的时候,需要特殊对待,例如作为表名,保留字需要被反引号包住:
mysql> CREATE TABLE select (a INT);
ERROR 1105 (HY000): line 0 column 19 near " (a INT)" (total length 27)
mysql> CREATE TABLE `select` (a INT);
Query OK, 0 rows affected (0.09 sec)BEGIN 和 END 是关键字, 但不是保留字,所以不需要反引号:
mysql> CREATE TABLE `select` (BEGIN int, END int);
Query OK, 0 rows affected (0.09 sec)有一种特殊情况, 如果使用了限定符 .,那么也不需要用反引号:
mysql> CREATE TABLE test.select (BEGIN int, END int);
Query OK, 0 rows affected (0.08 sec)下表列出了在 TiDB 中的关键字跟保留字,保留字用 ® 来标识:
| ACTION | ADD ® | ADDDATE |
|---|---|---|
| ADMIN | AFTER | ALL ® |
| ALTER ® | ALWAYS | ANALYZE® |
| AND ® | ANY | AS ® |
| ASC ® | ASCII | AUTO_INCREMENT |
| AVG | AVG_ROW_LENGTH | BEGIN |
| BETWEEN ® | BIGINT ® | BINARY ® |
| BINLOG | BIT | BIT_XOR |
| BLOB ® | BOOL | BOOLEAN |
| BOTH ® | BTREE | BY ® |
| BYTE | CASCADE ® | CASE ® |
| CAST | CHANGE ® | CHAR ® |
| CHARACTER ® | CHARSET | CHECK ® |
| CHECKSUM | COALESCE | COLLATE ® |
| COLLATION | COLUMN ® | COLUMNS |
| COMMENT | COMMIT | COMMITTED |
| COMPACT | COMPRESSED | COMPRESSION |
| CONNECTION | CONSISTENT | CONSTRAINT ® |
| CONVERT ® | COUNT | CREATE ® |
| CROSS ® | CURRENT_DATE ® | CURRENT_TIME ® |
| CURRENT_TIMESTAMP ® | CURRENT_USER ® | CURTIME |
| DATA | DATABASE ® | DATABASES ® |
| DATE | DATE_ADD | DATE_SUB |
| DATETIME | DAY | DAY_HOUR ® |
| DAY_MICROSECOND ® | DAY_MINUTE ® | DAY_SECOND ® |
| DDL | DEALLOCATE | DEC |
| DECIMAL ® | DEFAULT ® | DELAY_KEY_WRITE |
| DELAYED ® | DELETE ® | DESC ® |
| DESCRIBE ® | DISABLE | DISTINCT ® |
| DISTINCTROW ® | DIV ® | DO |
| DOUBLE ® | DROP ® | DUAL ® |
| DUPLICATE | DYNAMIC | ELSE ® |
| ENABLE | ENCLOSED | END |
| ENGINE | ENGINES | ENUM |
| ESCAPE | ESCAPED | EVENTS |
| EXCLUSIVE | EXECUTE | EXISTS |
| EXPLAIN ® | EXTRACT | FALSE ® |
| FIELDS | FIRST | FIXED |
| FLOAT ® | FLUSH | FOR ® |
| FORCE ® | FOREIGN ® | FORMAT |
| FROM ® | FULL | FULLTEXT ® |
| FUNCTION | GENERATED ® | GET_FORMAT |
| GLOBAL | GRANT ® | GRANTS |
| GROUP ® | GROUP_CONCAT | HASH |
| HAVING ® | HIGH_PRIORITY ® | HOUR |
| HOUR_MICROSECOND ® | HOUR_MINUTE ® | HOUR_SECOND ® |
| IDENTIFIED | IF ® | IGNORE ® |
| IN ® | INDEX ® | INDEXES |
| INFILE ® | INNER ® | INSERT ® |
| INT ® | INTEGER ® | INTERVAL ® |
| INTO ® | IS ® | ISOLATION |
| JOBS | JOIN ® | JSON |
| KEY ® | KEY_BLOCK_SIZE | KEYS ® |
| KILL ® | LEADING ® | LEFT ® |
| LESS | LEVEL | LIKE ® |
| LIMIT ® | LINES ® | LOAD ® |
| LOCAL | LOCALTIME ® | LOCALTIMESTAMP ® |
| LOCK ® | LONGBLOB ® | LONGTEXT ® |
| LOW_PRIORITY ® | MAX | MAX_ROWS |
| MAXVALUE ® | MEDIUMBLOB ® | MEDIUMINT ® |
| MEDIUMTEXT ® | MICROSECOND | MIN |
| MIN_ROWS | MINUTE | MINUTE_MICROSECOND ® |
| MINUTE_SECOND ® | MIN | MIN_ROWS |
| MINUTE | MINUTE_MICROSECOND | MINUTE_SECOND |
| MOD ® | MODE | MODIRY |
| MONTH | NAMES | NATIONAL |
| NATURAL ® | NO | NO_WRITE_TO_BINLOG ® |
| NONE | NOT ® | NOW |
| NULL ® | NUMERIC ® | NVARCHAR ® |
| OFFSET | ON ® | ONLY |
| OPTION ® | OR ® | ORDER ® |
| OUTER ® | PARTITION ® | PARTITIONS |
| PASSWORD | PLUGINS | POSITION |
| PRECISION ® | PREPARE | PRIMARY ® |
| PRIVILEGES | PROCEDURE ® | PROCESS |
| PROCESSLIST | QUARTER | QUERY |
| QUICK | RANGE ® | READ ® |
| REAL ® | REDUNDANT | REFERENCES ® |
| REGEXP ® | RENAME ® | REPEAT ® |
| REPEATABLE | REPLACE ® | RESTRICT ® |
| REVERSE | REVOKE ® | RIGHT ® |
| RLIKE ® | ROLLBACK | ROW |
| ROW_COUNT | ROW_FORMAT | SCHEMA |
| SCHEMAS | SECOND | SECOND_MICROSECOND ® |
| SELECT ® | SERIALIZABLE | SESSION |
| SET ® | SHARE | SHARED |
| SHOW ® | SIGNED | SMALLINT ® |
| SNAPSHOT | SOME | SQL_CACHE |
| SQL_CALC_FOUND_ROWS ® | SQL_NO_CACHE | START |
| STARTING ® | STATS | STATS_BUCKETS |
| STATS_HISTOGRAMS | STATS_META | STATS_PERSISTENT |
| STATUS | STORED ® | SUBDATE |
| SUBSTR | SUBSTRING | SUM |
| SUPER | TABLE ® | TABLES |
| TERMINATED ® | TEXT | THAN |
| THEN ® | TIDB | TIDB_INLJ |
| TIDB_SMJ | TIME | TIMESTAMP |
| TIMESTAMPADD | TIMESTAMPDIFF | TINYBLOB ® |
| TINYINT ® | TINYTEXT ® | TO ® |
| TRAILING ® | TRANSACTION | TRIGGER ® |
| TRIGGERS | TRIM | TRUE ® |
| TRUNCATE | UNCOMMITTED | UNION ® |
| UNIQUE ® | UNKNOWN | UNLOCK ® |
| UNSIGNED ® | UPDATE ® | USE ® |
| USER | USING ® | UTC_DATE ® |
| UTC_TIME ® | UTC_TIMESTAMP ® | VALUE |
| VALUES ® | VARBINARY ® | VARCHAR ® |
| VARIABLES | VIEW | VIRTUAL ® |
| WARNINGS | WEEK | WHEN ® |
| WHERE ® | WITH ® | WRITE ® |
| XOR ® | YEAR | YEAR_MONTH ® |
| ZEROFILL ® |
本页导航