MySQL字元編碼集(亂碼)問題解決
1、建立MySQL資料庫
1 CREATE DATABASE `test`2 CHARACTER SET 'utf8'3 COLLATE 'utf8_general_ci';
建立表
1 CREATE TABLE tp_wechatlocation 2 ( 3 ID INT NOT NULL AUTO_INCREMENT, 4 OpenID VARCHAR(50), 5 Latitude VARCHAR(10), 6 Longitude VARCHAR(10), 7 CityName VARCHAR(30), 8 CreateTime DATETIME, 9 PRIMARY KEY (ID)10 )ENGINE=INNODB DEFAULT CHARSET=utf8;
設定表的預設字元編碼集:ENGINE=INNODB DEFAULT CHARSET=utf8
如果在建立資料後面不加設定預設表的字元編碼集就會出現如“CityName”亂碼問題
2、解決
通過sql語句主動設定表的字元編碼集。
預設編碼為utf8:ALTER TABLE 表名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
ansi(即GBK或GB2312):ALTER DATABASE `db_name` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
修改列的預設字元編碼集:
ALTER TABLE tp_wechatlocation MODIFY CityName VARCHAR(30)CHARACTER SET utf8 COLLATE utf8_general_ci;
3、dos下不支援UTF8的顯示
Linux系統下設定字元集:
中文設定:export LANG=zh_CN.GB2312
英文設定:export LANG=zh_CN.UTF-8
4、查看字元編碼集
查看當前資料庫的相關編碼集:SHOW VARIABLES LIKE 'character%';
Variable_name Value
------------------------ -----------------------------------------------
character_set_client utf8
character_set_connection utf8
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server utf8
character_set_system utf8
character_sets_dir E:\wamp\bin\mysql\mysql5.5.20\share\charsets\
查看錶:show create table yjdb;
本文永久更新連結地址: