现在的位置: 首页 > 综合 > 正文

将MySQL中的关系表导出到Excel中

2012年05月25日 ⁄ 综合 ⁄ 共 687字 ⁄ 字号 评论关闭

测试环境为Win7,Office 2010, MySQL 5.5.42

 

1:创建一个测试表,3个字段,其中2个中文字段,用来做演示使用。 

1 mysql> create table tt(a int(11) not null,b varchar(30),c varchar(30)); 

 

1 mysql> insert into tt values(1,'北京','北京大学'),(2,'上海','上海大学'),(3,'深圳','深圳大学'); 

 

2:导出关系表到Excel文件,用OUTFILE方法,下面2种方法的效果是一样的。

1 mysql> select b,c from tt into outfile 'd:\xls_tt.xls';

 

1 mysql> select b,c into outfile 'd:\xlstt.xls' from tt;

 

3:到D盘下找到导出的XLS文件,发现都是乱码,如下所示:

鍖椾含 鍖椾含澶у 涓婃捣 涓婃捣澶у 娣卞湷 娣卞湷澶у

这样完全没办法使用。“这个时候文件是utf-8编码的,用Excel打开时是乱码。 把test.xls以文本方式打开,然后另存为,在编码格式中选择ANSI编码,保存”。这样操作后,不乱码了,但是需要手工去处理。

 

4:通过网络朋友的帮忙,找到下面转换的方法

1 mysql> select convert(b using gb2312),convert(c using gb2312) into outfile 'c:\xlstt12.xls' from tt;

这样打开导出的文件,一切都正常了。 

注意:

  1. 若关系表中没有中文,即所有内容是英文,则不需要转换,导出结果都可以正常显示;若有中文则需要进行转换。

抱歉!评论已关闭.