用SQLyog导出CSV文件,里面的中文都是乱码

lcb520 2009-09-08 12:29:48
rt
...全文
1704 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2009-09-08
  • 打赏
  • 举报
回复
set name 'xxxx'; 一下

http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
MySQL 中文显示乱码
lcb520 2009-09-08
  • 打赏
  • 举报
回复
解决了
编码没有问题 我双击打开CSV看是乱码
但是用记事本打开就没事
然后把CSV的再导入到EXCEL里也是好的
nianzhang747 2009-09-08
  • 打赏
  • 举报
回复
数据库中的数据正常的话

如果你导出sql文件和html,xml文件数据都正常的话,

那应该是excell 编码问题

更改成gb2312应该可以
lcb520 2009-09-08
  • 打赏
  • 举报
回复
我的步骤是 从EXCEL里读出数据放在LIST里
再把LIST的数据全扔到数据库
再用一条语句查出想要的结果导出CSV

数据库是UTF8的 没问题吧
我怀疑是读EXCEL的时候编码不一样吗?
不太清楚 很少操作这东西
nianzhang747 2009-09-08
  • 打赏
  • 举报
回复
1.更改字符集;
mysql> show variables like "%char%";
+--------------------------+----------------------------------------------------
-----+
| Variable_name | Value
|
+--------------------------+----------------------------------------------------
-----+
| character_set_client | latin1
|
| character_set_connection | latin1
|
| character_set_database | latin1
|
| character_set_filesystem | binary
|
| character_set_results | latin1
|
| character_set_server | latin1
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.1\share\chars
ets\ |
+--------------------------+----------------------------------------------------
-----+
8 rows in set (0.05 sec)
SET SESSION character_set_database=utf8;
2.查看列编码 默认utf8
create table
CREATE TABLE `user` (
`userid` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) NOT NULL,
PRIMARY KEY (`userid`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
ALTER TABLE USER DROP COLUMN username;
ALTER TABLE USER ADD COLUMN username VARCHAR(20) NOT NULL;
3.导出文件采取csv默认格式导出
vinsonshen 2009-09-08
  • 打赏
  • 举报
回复
应该是字符集问题

看看你的客户终端的编码是什么
然后在查询前先执行

set names '对应终端的字符集编码'
(如 set names 'utf8')

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧