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

代码如下

复制代码

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值