A-A+

mysql中导入导出CSV数据的用法例子

2019年02月18日 我爱编程 暂无评论

下面来看两个mysql 导入导出CSV数据的例子,这此都用到了mysql自带的命令了,如 LOAD DATA LOCAL INFILE 或select * INTO OUTFILE命令了.

cvs文件导入MySql数据库命令,代码如下:

  1. set names utf8;
  2. LOAD DATA LOCAL INFILE 'C:\\resource.csv'
  3. INTO TABLE resource
  4. FIELDS TERMINATED BY '  '
  5. LINES TERMINATED BY '\r\n'
  6. (title,singer);
  7. FIELDS TERMINATED BY ---- 字段终止字符 
  8. OPTIONALLY ENCLOSED BY ---- 封套符 
  9. LINES TERMINATED BY ---- 行终止符

导出一段时间的数据到 cvs,代码如下:

fileName="data"`date --date=$date "+%Y%m%d"`".csv";

#mysql里先导出数据到 xml, 用 select into outfile 导出,设定字段分隔符和记录分隔符.

/usr/local/webserver/mysql/bin/mysql -h "$mysql_host" -u "$mysql_username" --password="$mysql_password"  -e "select *  INTO OUTFILE '$data_dir$fileName' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"'  LINES TERMINATED BY '\\n'  from $table where InTime>=$minTime && InTime<$maxTime;"

#这一步也很重要, 需要将编码转换为GBK

rm -rf $final_dir$fileName && touch $final_dir$fileName

iconv -c  -f UTF-8 -t GBK  $data_dir$fileName >  $final_dir$fileName

先用select into outfile 把数据从mysql 里边倒出来,其中字段分隔符 \t,记录分隔符为 \n,然后转一下字符的编码就OK了.

标签:

给我留言

Copyright © 四季博客 保留所有权利.   Theme  Ality

用户登录