重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
mysqlutf转gbk报错,解决步骤如下:
创新互联建站-专业网站定制、快速模板网站建设、高性价比芗城网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式芗城网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖芗城地区。费用合理售后完善,10年实体公司更值得信赖。
1、win+r进入cmd,然后切到mysql安装目录的bin文件夹下(或者直接打开我的电脑找到bin文件夹,在上方地址栏输入cmd)。
2、输入mysql-uroot-p,然后按提示输入密码计入数据库。
3、设置编码。此时输入setcharacter_set_client=gbk。客户端这边的文字编码。再输入setcharacter_set_results=gbk。告诉mysql希望返回的结果集编码。
查看表中的每一个字段是不是都已设置成gbk
show full columns f
rom
tablename;
如果有字段没有设置成gbk
执行以下语句修改字符集
alter table tablename convert to character set gbk
由于mysql默认的字符集编码为latin ,而我们一般使用的是gbk 或者 gb2312编码
所以不改过来容易造成乱码
我用的是mysql 5.0 安装程序安装的 ,安装目录在C:\Program Files\MySQL\MySQL Server 5.0
请到这个目录下面找到 my。ini文件
修改default-character-set=latin1 为 default-character-set=gbk
记住有两个地方啊 都要改
最重要的一点就是修改文件前,先停止mysql服务 ,等修改后再重新启动
使用dos命令 :net stop mysql 来停止服务 net start mysql 来启动
然后在执行你的mysql脚本 ,一切ok! 这里你可以用discuz的sql做为例子运行!
我也遇见过此类情况,这是因为你刚开始安装的时候没把编码设置正确,你刚开始设置的是latin1,但是以前的是gb2312编码来的,所以在后台能正常显示,但是肯定在phpmyadmin是乱码,你重新设置为gb2312后,之前的编码还是latin1的,所以还是可能出现乱码。建议修改一下,删除表重建,在开始就统一编码。
操作如下:
首先把MySQL的服务停掉 在运行窗口输入:net stop mysql
把服务器和客户端的字符集改成自己想用的字符集:GB2312
具体操作为:打开mysql安装目录下的myini.tet;
找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入defaul就会找到,都要改过来;
重启MySQL服务器,在运行窗口输入:net start mysql
最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了