| 分類 | 關鍵字(部分) |
| DDL/DML | ADD, ALTER, CREATE, DROP, INDEX, INSERT, UPDATE, DELETE, REPLACE, TRUNCATE |
| 查詢控制 | SELECT, FROM, WHERE, GROUP, ORDER, BY, HAVING, LIMIT, DISTINCT, JOIN, UNION |
| 事務/鎖 | START, COMMIT, ROLLBACK, LOCK, UNLOCK, SAVEPOINT |
| 權限/管理 | GRANT, REVOKE, SHOW, USE, DESCRIBE, EXPLAIN, KILL, FLUSH, PURGE |
| 資料型別 | INT, BIGINT, VARCHAR, CHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP |
| 約束/索引 | PRIMARY, KEY, UNIQUE, FOREIGN, REFERENCES, CONSTRAINT, CHECK |
| 流程控制 | IF, ELSE, CASE, WHEN, THEN, LOOP, WHILE, REPEAT, ITERATE, LEAVE |
完整列表請參考官方文檔 Reserved Words 章節。
避坑指南
- 命名規範:業務欄位加前綴(如
biz_group、import_batch)
- 強制反引號:ORM/代碼生成工具配置
quote_identifiers=true
- 代碼審查清單:新增欄位檢查是否為保留字
- 緊急繞過:
SELECT \`group\` FROM t、INSERT INTO t (\`group\`) VALUES (...)
版本差異提醒
- MySQL 8.0 新增保留字:
RANK, GROUPS, FUNCTION 等
- 非保留字也可能在特定語境衝突(如
TIMESTAMP 作欄位名需反引號)
- 上一篇文章: MySQL 經典「8 小時問題」:連接池空閒超時與驗證策略
- 下一篇文章: 從零搭建 MySQL MMM 高可用架構:雲平台五節點部署全記錄
Copyright ©
程式碼之家 All Rights Reserved