MySQL的默認編碼是Latin1,不支持中文,要支持中午需要把數據庫的默認編碼修改為gbk或者utf8。
在安裝后MySQL之后,它的配置文件不是很給力,不知道你們的是不是,反正我的是!
開始插入中文字符的時候出現如下錯誤:
ERROR 1366 (HY000): Incorrect string value: '\xBB\xA7' for column 'Tname';
也就是不支持插入中文字符,于是通過網上的學習,在它的配置文件my-default.ini文件中添加了一些東西:
[mysqld]
character-set-server=utf8
datadir = "F:/MySql數據文件/"
#表名不區分大小寫(此與編碼無關)
[mysql]
default-character-set = utf8
[mysql.server]標簽下加上一行
default-character-set = utf8
[mysqld_safe]
default-character-set = utf8
[client]
default-character-set = utf8
?
通過 show varialbes like 'char%' 查看有關字符集的變量如下:
另外可以過 ?set?names 'charsetname'; 設置字符集
? ??比如,?set?names 'gbk';??這條命令會同時修改?character_set_client,character_set_connection,character_set_results, 很好用!
這樣MySQL在創建新表格的時候默認的就是utf8的編碼方式了!
但是注意的是,當前數據庫中已存在的數據仍保留現有的編碼方式,
如果需要更改編碼格式:
利用下面的指令可以嘗試一下:
查看?數據庫表中字段的字符集設置?。show create table TableName?或?show full columns from tableName
修改數據庫成utf8的. alter database name character set utf8;
修改表默認用utf8的 alter table name character set utf8;
修改字段用utf8的 alter table name modify type_name(變量名字) varchar(任意大小) CHARACTER SET utf8;