MySQL 直接將資料庫/表映射為目錄/文件,故敏感度繼承自作業系統。
-- Windows 可執行,Linux 報錯 Table 'my_table' doesn't exist
SELECT * FROM my_table WHERE MY_TABLE.col = 1;
同一查詢中混用大小寫在敏感系統會失敗。
lower_case_table_names=1 強制轉小寫存儲)。my.cnf [mysqld] 區段設定:lower_case_table_names=1| 值 | 行為 | 適用場景 |
|---|---|---|
| 0 | 敏感,按給定大小寫存儲/比對 | Linux 生產、需區分大小寫 |
| 1 | 不敏感,統一轉小寫存儲/比對 | Windows、跨平台遷移、統一規範 |
| 2 | 存儲保持給定大小寫,比對轉小寫 | 極少用,兼容舊應用 |