您现在的位置:主页 > 技术中心 > 数据库技术 > Mysql

MYSQL5.1 WINDOWS环境下导出查询数据到EXCEL文件

来源:网络 责任编辑:admin 发表时间:2013-07-01 15:15 点击:

今天做一个多表的联合查询,用phpmyadmin不支持导出,于是找到下面的方法,不错!

mysql查询出来的记录,导出到EXCEL文件,直接做报表输出。

测试环境WINDOWS XP,OFFICE 2003,MYSQL 5.1.45
1:创建一个测试表,3个字段,其中2个中文字段,用来做演示使用 mysql> create table tt(a int(11) not null,b varchar(30),c varchar(30));
Query OK, 0 rows affected (0.00 sec)

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

Records: 3 Duplicates: 0 Warnings: 0
 

2:导出到EXCEL文件,用OUTFILE方法,下面2种方法的效果是一样的

mysql> select b,c from tt into outfile 'c:\xls_tt.xls';
Query OK, 3 rows affected (0.00 sec)

mysql> select b,c into outfile 'c:\xlstt.xls' from tt;
Query OK, 3 rows affected (0.00 sec)
 

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


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


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

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

mysql> select convert(b using gb2312),convert(c using gb2312) into outfile'c:\xlstt12.xls' from tt;
Query OK, 3 rows affected (0.00 sec)

 

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

EXCEL的默认编码方式是GB2312的,在查询出来的字段转换成DB2312后,双方达成一致,所以不再乱码。


 

闪电小子 blog

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      评价:
      表情:
      用户名: 验证码:点击我更换图片

      推荐热点

      • mysql-mmm
      • mysqldump命令——MySQL数据库备份还原
      • Oracle数据导入MySQL的快捷工具:MySQL Migration Tool
      • 简简单单储存过程——循环一个select结果集
      • MySQL数据库十大优化技巧
      • Mysql安装笔记
      • Mysql主主复制架构配置
      • Mysql的Procedure 参数为NULL问题分析
      • MySQL Stmt预处理提高效率问题的小研究
      ?? - ?? - ÝřŝžľŘÝź - TAGąęÇŠ - RSSśŠÔÄ - ??
      Copyright © 2004-2024 上海卓卓网络科技有限公司