备忘笔记
PS:因为最近在学PHP,新手怎能离得开xampp这个好东西呢!但是每次用都会有中文乱码问题,头痛得很,这里做个笔记怕忘球了。
首先你可以用楼下这条命令查看各个编码情况。
show VARIABLES like “%char%”;
MySQL的编码分为:
- MySQL默认编码
- 数据库默认编码
- 表默认编码
当创建一个新的数据库时,除非明确指定,这个数据库的字符集被缺省设定为character_set_server;
当选定了一个数据库时,character_set_database 被设定为这个数据库默认的字符集;
在这个数据库里创建一张表时,表默认的字符集被设定为 character_set_database,也就是这个数据库默认的字符集;
MySQL的默认字符集是latin1,所以如果你数据库和表的字符集都是默认的话就是用MySQL的字符集,所以中文是乱码。
大家可以试一试:在mysql文件夹下找到my.ini,在里面可以修改默认字符集。打开my.ini以后,在[client]和[mysqld]下面均加上default-character-set=utf8,保存并关闭(mysqld中增加如果出错,可以试character-set-server=utf8) ,这是修改MySQL的编码。
如果发现不行,大家再修改一下你创建的数据库的编码,点击创建的数据库,点击“操作”,旁边有个编码下拉列表(我经常用utf-8),所以我选择utf8_general_ci保存。
再不行,,在你建表的时候可以设置表的字符集的create table table_name(…)charset=utf8;酱紫的。
ps:每次修改了东西,最好把服务重启一下哦,万一呢是不。
总结:我这只是把混乱的思路给大家讲讲,具体的还需要大家下去试试,不惜勿喷哈。。。哈切。