百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> mysql中数据导出成excel文件语句
分享文章到:

mysql中数据导出成excel文件语句

发布时间:01/15 来源: 浏览: 关键词:
在mysql中导出数据有一个非常简单的命令 into outfile可以快速的把数据记录导出成xls文件哦,有需要的朋友可参考。
 代码如下

mysql>select * from xi_table into outfile ’d:test.xls’;

导出为txt文件:

 代码如下

select * from xi_table into outfile ’d:test.txt’;


默认使用tab分割字段,记录使用n分割。可以自定义三个参数。

 代码如下

SELECT * FROMhx_9enjoy INTO OUTFILE '/tmp/9enjoy_hx.txt' FIELDS TERMINATED BY ',' OPTIONALLYENCLOSED BY '"' LINES TERMINATED BY 'n';

即使用,分割字段,双引号限定字段内容,n分割记录。

还可以指定某些条件的记录输出:

 代码如下

SELECT * FROMhx_9enjoy WHERE id < 100 INTO OUTFILE '/tmp/9enjoy_100.txt'

如果打开时excel中出现乱码我们可以导出时设置编码为gb2312 在服务器端使用iconv来进行编码转换:

 代码如下

iconv -futf8 -tgb2312 -otest2.xls test.xls


如果linux中可能会碰到mysql into outfile ERROR : Can't create/write to file  错误,这种问题就是权限的问题了

解决办法

 代码如下
sudo vi /etc/apparmor.d/usr.sbin.mysqld

在里面添加/data的可写目录,如下:

 代码如下
...
/usr/sbin/mysqld {
    ...
    /var/log/mysql/ r,
    /var/log/mysql/* rw,
    /var/run/mysqld/mysqld.pid w,
    /var/run/mysqld/mysqld.sock w,
    /data/* rw,
}

然后重新载入:

 代码如下
sudo /etc/init.d/apparmor reload/restart

还需要重启mysql,否则会出些莫名其妙的错误,如:
ERROR 1286 (42000) at line 1: Unknown table engine 'InnoDB'


重启mysql:

 代码如下

 sudo service mysql stop
 sudo service mysql start

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有5人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板