早期寫mysql資料庫編碼 latin1 可以配合 mysqldump 修正的方式
還有在用 big5 還有 latin1 編碼的資料庫嗎? 可試著用 mysqldump 配合編碼指定轉換成為 utf8 的格式... * 資料庫編碼問題 在以前 MySQL 預設的語系是 latin1 這語系是給拉丁語系的國家使用的, 但是以前很多開發者沒有去注意這一段都使用這種語系在做 sql 的工作, 但有時候會出現一些問題。 例如:某兩個中文字在一起就會產生亂碼,中間夾各空白就又好了。 現在 Unicode 的環境已經很成熟了, UTF-8 編碼目前也是大家遵循的標準, 但這些以前的資料如果拿出來使用可以指定預設編碼匯出後再匯入到UTF-8標準 編碼內的資料庫,或許就可以把這問題解決。 --default-character-set=latin1 指定預設編碼輸出。 範例:mysqldump with 預設編碼輸出 --default-character-set=latin1 mysqldump post2 -h localhost -u post --password=密碼 --default-character-set=latin1 > post2.sql * dump 出來後請看一下文字檔,記得把表格敘述改成 CHARSET=utf8 再匯到新的表格指定 UTF8 編碼 CREATE TABLE `CONDUCT` ( `班級座號` varchar(9) DEFAULT NULL, `導師評分` decimal(15,5) DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8; * 編碼請參考:http://dev.mysql.com/doc/refman/5.6/en/charset-connection.html * 為了避免語系的悲劇再次重演,你可以這樣做。在 mysql 系統的 /etc/mysql/my.cnf 檔案加入類似這樣的設定,直接綁定預設為 utf8 [mysqld] default-character-set=utf8 [client] default-character-set=utf8 init_connect='SET NAMES utf8' * 寫程式的時候記得要輸出 mysql_query(...