用SQLyog出现乱码 怎么解决啊??? 急需求解决办法!!!!!!!急 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspxMySQL 中文显示乱码 .... 我在Navicat 上没有问题 就是在SQLyog上就有问题啊 set names 'xxxx'看一下1楼给你的贴子,提供必要的信息以供别人分析。 我的 set name 'utf8'然后数据库的字符集也是utf8 在页面上也是 可是就是出乱码 你说这是为什么 提供你的 show create table xxxx show create table 是什么 ? 是我的 sql 文件吗? http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspxMySQL 中文显示乱码这里第一步就是要求你贴出你的 show create table , show variables like ... CREATE TABLE `jh_activities` ( `Activities_id` int(11) NOT NULL auto_increment, `Activities_bt` tinytext, `Activities_nr` text, `Activities_date` datetime default NULL, PRIMARY KEY (`Activities_id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8这样的 show variable like ...呢? 这是第2个show variables like 'char%':character_set_client utf8character_set_connection utf8character_set_database latin1character_set_filesystem binarycharacter_set_results utf8character_set_server latin1character_set_system utf8character_sets_dir D:\\MySQL\\share\\charsets\\ 你测试一下create table ttt (id int , col varchar(30)) DEFAULT CHARSET=utf8;insert into ttt values (1,'这是第2个');select * from ttt;看一下结果如何? set names 'utf8';然后再试一次insert into ttt values (1,'这是第2个'); 在SQLyog上执行set names 'gbk'就可以了。原因:因为SQLyog窗口的字符集是gbk,如果你直接执行set names 'utf8',这样SQLyog窗口输入的字符集当成utf8了,数据库就不会做转换。如果执行的是set names 'gbk',数据库会把gbk转换成utf8。有兴趣的话,请查看我的博客《国际化开发FAQ》:http://blog.csdn.net/forever_feng/archive/2009/07/21/4367935.aspx 讨论个常用的sql统计 PHP连接不上数据库 mysql 中能使用with as 吗? SQL-FRONT中存储过程字符类型转换的问题 mysql表损坏 求最优的sql,尽量少次的数据库交互 查询时求百分比? 一个老问题,中文写入mysql是乱码,读没问题,请教各位,我用的是连接池!!! 求一sql语句,查询a字段,某个值出现两次,就更新当条值的另一个字段 mysql时间查询问题 Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (gb2312_chinese_ci,错误 求某个列的最大值,文档里的没弄明白
MySQL 中文显示乱码
然后数据库的字符集也是utf8 在页面上也是 可是就是出乱码 你说这是为什么
show create table 是什么 ? 是我的 sql 文件吗?
MySQL 中文显示乱码这里第一步就是要求你贴出你的 show create table , show variables like ...
`Activities_id` int(11) NOT NULL auto_increment,
`Activities_bt` tinytext,
`Activities_nr` text,
`Activities_date` datetime default NULL,
PRIMARY KEY (`Activities_id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
这样的
show variables like 'char%':character_set_client utf8
character_set_connection utf8
character_set_database latin1
character_set_filesystem binary
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir D:\\MySQL\\share\\charsets\\
然后再试一次insert into ttt values (1,'这是第2个');
原因:
因为SQLyog窗口的字符集是gbk,如果你直接执行set names 'utf8',这样SQLyog窗口输入的字符集当成utf8了,数据库就不会做转换。
如果执行的是set names 'gbk',数据库会把gbk转换成utf8。有兴趣的话,请查看我的博客《国际化开发FAQ》:
http://blog.csdn.net/forever_feng/archive/2009/07/21/4367935.aspx