使用UTF8 進行MySQL 命令列格式化:保留表格輸出
查詢包含非Latin1 字元的資料庫時,使用「set names utf8」命令可能會破壞表格格式在命令列中。本文探討了在顯示 UTF8 編碼資料時保持此格式的解決方案。
簡短答案:將預設字元集設定為UTF8
使用'--default-character-set= 執行客戶端utf8' 選項:
或將其加為預設值在'/etc/mysql/my.cnf' 中:
擴展詳細資訊
透過設定預設字元集為UTF8,則強制以下配置變數為UTF8:
- character_set_client
- character_set_connection
- character_set_results
character_set_results
- character_set_results
- character_set_database 表示目前schema 的字元集。
- character_set_server 可以修改在'/etc/mysql/my.cnf'。
- 表格和欄位可以有自己的字元集,可能與其父表或架構不同。詳情請參考這裡提供的答案:如何查看 MySQL 資料庫/表格/列是什麼字元集?
- 要更改現有表格和欄位的字元集,請參考這個答案:如何轉換整個 MySQL 資料庫字元集和排序規則為 UTF-8?
- 如果所有內容都設定為 UTF8 但奇怪的字元仍然存在,則這些值可能是使用不同的字元集寫入的。使用正確的字元集連接到資料庫或使用正確的編碼重寫值。
注意:完整的 UTF-8 實作
MySQL 的 UTF8 編碼不是完全相容的 UTF- 8 實作。要獲得完整的 UTF-8 支持,請使用“utf8mb4”字元集。使用“--default-character-set=utf8mb4”運行客戶端。
以上是如何在 MySQL 命令列中使用 UTF8 保留表格格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!