当前位置:首页 > Mysql教程 > 列表

mysql 导入导出CSV数据的例子

发布:smiling 来源: PHP粉丝网  添加日期:2015-04-20 15:55:06 浏览: 评论:0 

下面来看两个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. --phpfensi.com 
  8. FIELDS TERMINATED BY ---- 字段终止字符  
  9. OPTIONALLY ENCLOSED BY ---- 封套符  
  10. 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了.

Tags: mysql导入导出 CSV数据

分享到: