關鍵字是在 SQL 中具有意義的詞彙。某些關鍵字,例如 SELECT
、DELETE
或 BIGINT
,是保留字,需要特殊處理才能作為識別符(例如表格和欄位名稱)使用。內建函式的名稱也可能是如此。
非保留關鍵字允許在不加引號的情況下作為識別符使用。保留字如果使用引號括起來,則允許作為識別符使用,如 第 11.2 節「結構描述物件名稱」中所述。
mysql> CREATE TABLE interval (begin INT, end INT);
ERROR 1064 (42000): You have an error in your SQL syntax ...
near 'interval (begin INT, end INT)'
BEGIN
和 END
是關鍵字但不是保留字,因此將它們用作識別符不需要加上引號。INTERVAL
是保留關鍵字,必須加上引號才能用作識別符。
mysql> CREATE TABLE `interval` (begin INT, end INT);
Query OK, 0 rows affected (0.01 sec)
例外:在限定名稱中,出現在句點後的詞彙必須是識別符,因此即使它是保留字也不需要加上引號。
mysql> CREATE TABLE mydb.interval (begin INT, end INT);
Query OK, 0 rows affected (0.01 sec)
內建函式的名稱允許作為識別符,但可能需要小心使用。例如,COUNT
可以接受作為欄位名稱。但是,預設情況下,函式調用中的函式名稱和後面的 (
字元之間不允許有空格。這個要求使剖析器能夠區分名稱是用在函式呼叫中還是非函式環境中。關於函式名稱識別的更多詳細資訊,請參閱 第 11.2.5 節「函式名稱剖析和解析」。
INFORMATION_SCHEMA.KEYWORDS
表格列出了 MySQL 視為關鍵字的詞彙,並指出它們是否為保留字。請參閱 第 28.3.17 節「INFORMATION_SCHEMA KEYWORDS 表格」。
以下列表顯示了 MySQL 9.0 中的關鍵字和保留字,以及每個版本中個別詞彙的變更。保留關鍵字標有 (R)。此外,_FILENAME
是保留字。
在某些時候,您可能會升級到更高的版本,因此最好也看看未來的保留字。您可以在涵蓋更高版本 MySQL 的手冊中找到這些字。列表中大多數保留字都被標準 SQL 禁止用作欄位或表格名稱(例如,GROUP
)。少數保留字是因為 MySQL 需要它們並使用 yacc 剖析器。
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
ACCESSIBLE
(R)ACCOUNT
ACTION
ACTIVE
ADD
(R)ADMIN
AFTER
AGAINST
AGGREGATE
ALGORITHM
ALL
(R)ALTER
(R)ALWAYS
ANALYZE
(R)AND
(R)ANY
ARRAY
AS
(R)ASC
(R)ASCII
ASENSITIVE
(R)AT
ATTRIBUTE
AUTHENTICATION
AUTO
AUTOEXTEND_SIZE
AUTO_INCREMENT
AVG
AVG_ROW_LENGTH
BACKUP
BEFORE
(R)BEGIN
BERNOULLI
BETWEEN
(R)BIGINT
(R)BINARY
(R)BINLOG
BIT
BLOB
(R)BLOCK
BOOL
BOOLEAN
BOTH
(R)BTREE
BUCKETS
BULK
BY
(R)BYTE
CACHE
CALL
(R)CASCADE
(R)CASCADED
CASE
(R)CATALOG_NAME
CHAIN
CHALLENGE_RESPONSE
CHANGE
(R)CHANGED
CHANNEL
CHAR
(R)CHARACTER
(R)CHARSET
CHECK
(R)CHECKSUM
CIPHER
CLASS_ORIGIN
CLIENT
CLONE
CLOSE
COALESCE
CODE
COLLATE
(R)COLLATION
COLUMN
(R)COLUMNS
COLUMN_FORMAT
COLUMN_NAME
COMMENT
COMMIT
COMMITTED
COMPACT
COMPLETION
COMPONENT
COMPRESSED
COMPRESSION
CONCURRENT
CONDITION
(R)CONNECTION
CONSISTENT
CONSTRAINT
(R)CONSTRAINT_CATALOG
CONSTRAINT_NAME
CONSTRAINT_SCHEMA
CONTAINS
CONTEXT
CONTINUE
(R)CONVERT
(R)CPU
CREATE
(R)CROSS
(R)CUBE
(R)CUME_DIST
(R)CURRENT
CURRENT_DATE
(R)CURRENT_TIME
(R)CURRENT_TIMESTAMP
(R)CURRENT_USER
(R)CURSOR
(R)CURSOR_NAME
DATA
DATABASE
(R)DATABASES
(R)資料檔
日期
日期時間
日
DAY_HOUR
(R)DAY_MICROSECOND
(R)DAY_MINUTE
(R)DAY_SECOND
(R)解除配置
DEC
(R)DECIMAL
(R)DECLARE
(R)DEFAULT
(R)預設驗證
定義者
定義
DELAYED
(R)延遲鍵寫入
DELETE
(R)DENSE_RANK
(R)DESC
(R)DESCRIBE
(R)描述
DETERMINISTIC
(R)診斷
目錄
停用
捨棄
磁碟
DISTINCT
(R)DISTINCTROW
(R)DIV
(R)執行
DOUBLE
(R)DROP
(R)DUAL
(R)傾印檔
重複
動態
EACH
(R)ELSE
(R)ELSEIF
(R)EMPTY
(R)啟用
ENCLOSED
(R)加密
結束
結束於
強制
引擎
引擎們
引擎屬性
列舉
錯誤
錯誤們
跳脫字元
ESCAPED
(R)事件
事件們
每個
EXCEPT
(R)交換
排除
執行
EXISTS
(R)EXIT
(R)擴展
過期
EXPLAIN
(R)匯出
擴展的
範圍大小
FACTOR
FAILED_LOGIN_ATTEMPTS
FALSE
(R)FAST
FAULTS
FETCH
(R)FIELDS
FILE
FILE_BLOCK_SIZE
FILTER
FINISH
FIRST
FIRST_VALUE
(R)FIXED
FLOAT
(R)FLOAT4
(R)FLOAT8
(R)FLUSH
FOLLOWING
FOLLOWS
FOR
(R)FORCE
(R)FOREIGN
(R)FORMAT
FOUND
FROM
(R)FULL
FULLTEXT
(R)FUNCTION
(R)
GENERAL
GENERATE
GENERATED
(R)GEOMCOLLECTION
GEOMETRY
GEOMETRYCOLLECTION
GET
(R)GET_FORMAT
GET_SOURCE_PUBLIC_KEY
GLOBAL
GRANT
(R)GRANTS
GROUP
(R)GROUPING
(R)GROUPS
(R)GROUP_REPLICATION
GTIDS
GTID_ONLY
HANDLER
HASH
HAVING
(R)HELP
HIGH_PRIORITY
(R)HISTOGRAM
HISTORY
HOST
HOSTS
HOUR
HOUR_MICROSECOND
(R)HOUR_MINUTE
(R)HOUR_SECOND
(R)
IDENTIFIED
IF
(R)IGNORE
(R)IGNORE_SERVER_IDS
IMPORT
IN
(R)INACTIVE
INDEX
(R)INDEXES
INFILE
(R)INITIAL
INITIAL_SIZE
INITIATE
INNER
(R)INOUT
(R)INSENSITIVE
(R)INSERT
(R)INSERT_METHOD
INSTALL
INSTANCE
INT
(R)INT1
(R)INT2
(R)INT3
(R)INT4
(R)INT8
(R)INTEGER
(R)INTERSECT
(R)INTERVAL
(R)INTO
(R)INVISIBLE
INVOKER
IO
IO_AFTER_GTIDS
(R)IO_BEFORE_GTIDS
(R)IO_THREAD
IPC
IS
(R)ISOLATION
ISSUER
ITERATE
(R)
JOIN
(R)JSON
JSON_TABLE
(R)JSON_VALUE
KEY
(R)KEYRING
KEYS
(R)KEY_BLOCK_SIZE
KILL
(R)
LAG
(R)LANGUAGE
LAST
LAST_VALUE
(R)LATERAL
(R)LEAD
(R)LEADING
(R)LEAVE
(R)LEAVES
LEFT
(R)LESS
LEVEL
LIKE
(R)LIMIT
(R)LINEAR
(R)LINES
(R)LINESTRING
LIST
LOAD
(R)LOCAL
LOCALTIME
(R)LOCALTIMESTAMP
(R)LOCK
(R)LOCKED
LOCKS
LOG
LOGFILE
LOGS
LONG
(R)LONGBLOB
(R)LONGTEXT
(R)LOOP
(R)LOW_PRIORITY
(R)
MANUAL
(R)MASTER
MATCH
(R)MAXVALUE
(R)MAX_CONNECTIONS_PER_HOUR
MAX_QUERIES_PER_HOUR
MAX_ROWS
MAX_SIZE
MAX_UPDATES_PER_HOUR
MAX_USER_CONNECTIONS
MEDIUM
MEDIUMBLOB
(R)MEDIUMINT
(R)MEDIUMTEXT
(R)MEMBER
MEMORY
MERGE
MESSAGE_TEXT
MICROSECOND
MIDDLEINT
(R)MIGRATE
MINUTE
MINUTE_MICROSECOND
(R)MINUTE_SECOND
(R)MIN_ROWS
MOD
(R)MODE
MODIFIES
(R)MODIFY
MONTH
MULTILINESTRING
MULTIPOINT
MULTIPOLYGON
MUTEX
MYSQL_ERRNO
NAME
NAMES
NATIONAL
NATURAL
(R)NCHAR
NDB
NDBCLUSTER
NESTED
NETWORK_NAMESPACE
NEVER
NEW
NEXT
NO
NODEGROUP
NONE
NOT
(R)NOWAIT
NO_WAIT
NO_WRITE_TO_BINLOG
(R)NTH_VALUE
(R)NTILE
(R)NULL
(R)NULLS
NUMBER
NUMERIC
(R)NVARCHAR
OF
(R)OFF
OFFSET
OJ
OLD
ON
(R)ONE
ONLY
OPEN
OPTIMIZE
(R)OPTIMIZER_COSTS
(R)OPTION
(R)OPTIONAL
OPTIONALLY
(R)OPTIONS
OR
(R)ORDER
(R)ORDINALITY
ORGANIZATION
OTHERS
OUT
(R)OUTER
(R)OUTFILE
(R)OVER
(R)OWNER
PACK_KEYS
PAGE
PARALLEL
(R)PARSER
PARSE_TREE
PARTIAL
PARTITION
(R)PARTITIONING
PARTITIONS
PASSWORD
PASSWORD_LOCK_TIME
PATH
PERCENT_RANK
(R)PERSIST
PERSIST_ONLY
PHASE
PLUGIN
PLUGINS
PLUGIN_DIR
POINT
POLYGON
PORT
PRECEDES
PRECEDING
PRECISION
(R)PREPARE
PRESERVE
PREV
PRIMARY
(R)PRIVILEGES
PRIVILEGE_CHECKS_USER
PROCEDURE
(R)PROCESS
PROCESSLIST
PROFILE
PROFILES
PROXY
PURGE
(R)
QUALIFY
(R)QUARTER
QUERY
QUICK
RANDOM
RANGE
(R)RANK
(R)READ
(R)READS
(R)READ_ONLY
READ_WRITE
(R)REAL
(R)REBUILD
RECOVER
RECURSIVE
(R)REDO_BUFFER_SIZE
REDUNDANT
REFERENCE
REFERENCES
(R)REGEXP
(R)REGISTRATION
RELAY
RELAYLOG
RELAY_LOG_FILE
RELAY_LOG_POS
RELAY_THREAD
RELEASE
(R)RELOAD
REMOVE
RENAME
(R)REORGANIZE
REPAIR
REPEAT
(R)REPEATABLE
REPLACE
(R)REPLICA
REPLICAS
REPLICATE_DO_DB
REPLICATE_DO_TABLE
REPLICATE_IGNORE_DB
REPLICATE_IGNORE_TABLE
REPLICATE_REWRITE_DB
REPLICATE_WILD_DO_TABLE
REPLICATE_WILD_IGNORE_TABLE
REPLICATION
REQUIRE
(R)REQUIRE_ROW_FORMAT
重設 (RESET)
RESIGNAL
(R)資源 (RESOURCE)
尊重 (RESPECT)
重新啟動 (RESTART)
還原 (RESTORE)
RESTRICT
(R)恢復 (RESUME)
保留 (RETAIN)
RETURN
(R)傳回的SQLSTATE (RETURNED_SQLSTATE)
正在傳回 (RETURNING)
傳回 (RETURNS)
重用 (REUSE)
反向 (REVERSE)
REVOKE
(R)RIGHT
(R)RLIKE
(R)角色 (ROLE)
回滾 (ROLLBACK)
總計 (ROLLUP)
旋轉 (ROTATE)
常式 (ROUTINE)
ROW
(R)ROWS
(R)列計數 (ROW_COUNT)
列格式 (ROW_FORMAT)
ROW_NUMBER
(R)RTREE
S3
儲存點 (SAVEPOINT)
排程 (SCHEDULE)
SCHEMA
(R)SCHEMAS
(R)綱要名稱 (SCHEMA_NAME)
秒 (SECOND)
次要 (SECONDARY)
次要引擎 (SECONDARY_ENGINE)
次要引擎屬性 (SECONDARY_ENGINE_ATTRIBUTE)
次要載入 (SECONDARY_LOAD)
次要卸載 (SECONDARY_UNLOAD)
SECOND_MICROSECOND
(R)安全性 (SECURITY)
SELECT
(R)SENSITIVE
(R)SEPARATOR
(R)序列 (SERIAL)
可序列化 (SERIALIZABLE)
伺服器 (SERVER)
工作階段 (SESSION)
SET
(R)共享 (SHARE)
SHOW
(R)關閉 (SHUTDOWN)
SIGNAL
(R)帶正負號 (SIGNED)
簡單 (SIMPLE)
跳過 (SKIP)
從屬 (SLAVE)
慢 (SLOW)
SMALLINT
(R)快照 (SNAPSHOT)
通訊端 (SOCKET)
一些 (SOME)
共享物件名稱 (SONAME)
SOUNDS
來源 (SOURCE)
來源自動定位 (SOURCE_AUTO_POSITION)
來源繫結 (SOURCE_BIND)
來源壓縮演算法 (SOURCE_COMPRESSION_ALGORITHMS)
來源連線重試 (SOURCE_CONNECT_RETRY)
來源延遲 (SOURCE_DELAY)
來源心跳週期 (SOURCE_HEARTBEAT_PERIOD)
來源主機 (SOURCE_HOST)
來源記錄檔 (SOURCE_LOG_FILE)
來源記錄位置 (SOURCE_LOG_POS)
來源密碼 (SOURCE_PASSWORD)
來源連接埠 (SOURCE_PORT)
來源公開金鑰路徑 (SOURCE_PUBLIC_KEY_PATH)
來源重試計數 (SOURCE_RETRY_COUNT)
來源 SSL (SOURCE_SSL)
來源 SSL CA (SOURCE_SSL_CA)
來源 SSL CAPATH (SOURCE_SSL_CAPATH)
來源 SSL 憑證 (SOURCE_SSL_CERT)
來源 SSL 加密套件 (SOURCE_SSL_CIPHER)
來源 SSL CRL (SOURCE_SSL_CRL)
來源 SSL CRLPATH (SOURCE_SSL_CRLPATH)
來源 SSL 金鑰 (SOURCE_SSL_KEY)
來源 SSL 驗證伺服器憑證 (SOURCE_SSL_VERIFY_SERVER_CERT)
來源 TLS 加密套件 (SOURCE_TLS_CIPHERSUITES)
來源 TLS 版本 (SOURCE_TLS_VERSION)
來源使用者 (SOURCE_USER)
來源 ZSTD 壓縮層級 (SOURCE_ZSTD_COMPRESSION_LEVEL)
SPATIAL
(R)SPECIFIC
(R)SQL
(R)SQLEXCEPTION
(R)SQLSTATE
(R)SQLWARNING
(R)SQL_AFTER_GTIDS
SQL_AFTER_MTS_GAPS
SQL_BEFORE_GTIDS
SQL_BIG_RESULT
(R)SQL_BUFFER_RESULT
SQL_CALC_FOUND_ROWS
(R)SQL_NO_CACHE
SQL_SMALL_RESULT
(R)SQL_THREAD
SQL_TSI_DAY
SQL_TSI_HOUR
SQL_TSI_MINUTE
SQL_TSI_MONTH
SQL_TSI_QUARTER
SQL_TSI_SECOND
SQL_TSI_WEEK
SQL_TSI_YEAR
SRID
SSL
(R)堆疊 (STACKED)
開始 (START)
STARTING
(R)開始 (STARTS)
STATS_AUTO_RECALC
STATS_PERSISTENT
STATS_SAMPLE_PAGES
狀態 (STATUS)
停止 (STOP)
儲存 (STORAGE)
STORED
(R)STRAIGHT_JOIN
(R)串流 (STREAM)
字串 (STRING)
子類別來源 (SUBCLASS_ORIGIN)
主旨 (SUBJECT)
子分割 (SUBPARTITION)
子分割區 (SUBPARTITIONS)
超級 (SUPER)
暫停 (SUSPEND)
交換 (SWAPS)
開關 (SWITCHES)
SYSTEM
(R)
TABLE
(R)表格 (TABLES)
TABLESAMPLE
(R)表格空間 (TABLESPACE)
表格檢查總和 (TABLE_CHECKSUM)
表格名稱 (TABLE_NAME)
暫時 (TEMPORARY)
暫時表格 (TEMPTABLE)
TERMINATED
(R)文字 (TEXT)
超過 (THAN)
THEN
(R)執行緒優先順序 (THREAD_PRIORITY)
平手 (TIES)
時間 (TIME)
時間戳記 (TIMESTAMP)
時間戳記相加 (TIMESTAMPADD)
時間戳記差 (TIMESTAMPDIFF)
TINYBLOB
(R)TINYINT
(R)TINYTEXT
(R)TLS
TO
(R)TRAILING
(R)交易 (TRANSACTION)
TRIGGER
(R)觸發器 (TRIGGERS)
TRUE
(R)截斷 (TRUNCATE)
類型 (TYPE)
類型 (TYPES)
無界限 (UNBOUNDED)
未認可 (UNCOMMITTED)
未定義 (UNDEFINED)
UNDO
(R)復原檔案 (UNDOFILE)
復原緩衝區大小 (UNDO_BUFFER_SIZE)
萬國碼 (UNICODE)
解除安裝 (UNINSTALL)
UNION
(R)UNIQUE
(R)未知 (UNKNOWN)
UNLOCK
(R)取消註冊 (UNREGISTER)
UNSIGNED
(R)直到 (UNTIL)
UPDATE
(R)升級 (UPGRADE)
URL
USAGE
(R)USE
(R)使用者 (USER)
使用者資源 (USER_RESOURCES)
USE_FRM
USING
(R)UTC_DATE
(R)UTC_TIME
(R)UTC_TIMESTAMP
(R)
驗證 (VALIDATION)
值 (VALUE)
VALUES
(R)VARBINARY
(R)VARCHAR
(R)VARCHARACTER
(R)變數 (VARIABLES)
VARYING
(R)VCPU
向量 (VECTOR)
檢視 (VIEW)
VIRTUAL
(R)可見 (VISIBLE)
等待 (WAIT)
警告 (WARNINGS)
週 (WEEK)
權重字串 (WEIGHT_STRING)
WHEN
(R)WHERE
(R)WHILE
(R)WINDOW
(R)WITH
(R)不含 (WITHOUT)
工作 (WORK)
包裝函式 (WRAPPER)
WRITE
(R)
X509
XA
XID
XML
XOR
(R)
年 (YEAR)
YEAR_MONTH
(R)
ZEROFILL
(R)時區 (ZONE)