怎样将MySQL数据导出到Excel表中
4个回答
2018-07-31 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
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后,双方达成一致,所以不再乱码。
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后,双方达成一致,所以不再乱码。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用代码写一个下载exl表格的插件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-12-16 · 知道合伙人数码行家
关注
展开全部
在mysql命令行下执行以下sql语句:
mysql>select * from xi_table into outfile ’/tmp/test.xls’;
一句话搞定。
linux系统尽量导出在/tmp目录下,不会涉及读写权限问题!
导出为txt文件:
select * from xi_table into outfile ’/tmp/test.txt’;
有时候有excel打开的时候会出现乱码,
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择:
在服务器端使用iconv来进行编码转换:
iconv -futf8 -tgb2312 -otest2.xls test.xls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:
iconv: illegal input sequence at position 1841 类似于这样的错误,
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。
这样再用excel打开,乱码问题就解决了.
mysql>select * from xi_table into outfile ’/tmp/test.xls’;
一句话搞定。
linux系统尽量导出在/tmp目录下,不会涉及读写权限问题!
导出为txt文件:
select * from xi_table into outfile ’/tmp/test.txt’;
有时候有excel打开的时候会出现乱码,
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择:
在服务器端使用iconv来进行编码转换:
iconv -futf8 -tgb2312 -otest2.xls test.xls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:
iconv: illegal input sequence at position 1841 类似于这样的错误,
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。
这样再用excel打开,乱码问题就解决了.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询