1. SELECT * INTO OUTFILE ‘./test.xls‘ FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50
这样,应该会在你的mysql的var/目录下产生一个test.xls的文件。。。
但是如果你的shell的登录帐户和mysql的运行账户不同,很可能这个方法就不适用了,因为你可以通过mysql控制台来产生这个文件,但是你却没有办法通过shell来对这个文件进行 *** 作,因为用户不同,没有访问权限。
这个时候,同事告诉偶滴办法就重装登录了!!!
1. echo "SELECT * FROM tb1 WHERE 1 ORDER BY id DESC LIMIT 0, 50"| /usr/local/mysql/bin/mysql -hlocalhost -uroot -pxxxxx >/tmp/test.xls
ok,把你的test.xls文件从tmp下载到本地打开来看看吧。。。
什么?中文乱码?
别着急。。。
因为office默认的是gb2312编码,服务器端生成的很有可能是utf-8编码,这个时候你有两种选择,
1.在服务器端使用iconv来进行编码转换,
1. iconv -futf8 -tgb2312 -otest2.xls test.xls
如果转换顺利,那么从server上下载下来就可以使用了。
转换如果不顺利,则会提示:iconv: illegal input sequence at position 1841 类似于这样的错误,
先把test.xls下载下来,这个时候文件是utf-8编码的,用excel打开,乱码。
把test.xls以文本方式打开,然后另存为,在编码选择ANSI编码,保存。
create database project
use project
create table tb_books(id int unsigned not null auto_increment,name varchar(45) not null,price double not null,bookCount int unsigned not null,author varchar(45) not null,primary key(id))
如此即可,图为结果
MySQL数据导出到Excel表中的具体 *** 作步骤如下:
1、打开电脑上的Navicat for MySQL快捷键,查看数据库。
2、点击root打开,单击core_db,展开选项中可以看到表。
3、点击表看到数据库中的所有表,右击表d出选项导出向导。
4、点击导出向导,d出导出的页面,导出到EXCEL表中,选择导出的格式为.xls,单击下一步。
5、勾选需要导出的表,设置导出文件所在位置,点击下一步。
6、选择需要导出的表中的数据,默认的是全部栏位,单击下一步。
7、点击下一步,再次点击下一步,点击右下角的开始按钮,即可导出。
8、导出之后,提示导出成功,MySQL数据导出到Excel表。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)