有限制条件的大招:
第一步:执行完以下sql,会自动的在mysql服务器对应的机器上生成所要的文件
SELECT ... FROM TABLE_xxx where ... INTOOUTFILE"/tmp/xxx/xxx"FIELDSTERMINATEDBY','OPTIONALLYENCLOSEDBY''LINESTERMINATEDBY'\n';
第二步:将上面sql中的导出文件的地址“/tmp/xxx/xxx”里的文件,用文件流下载下来。
此种方式有约束条件:对于那些严格遵守规范的大公司来说,mysql数据库的机器上的文件是不允许应用去拿的,只能从sftp或者专门的文件服务器上去拿,故拿不到该文件,方案不可行。
注:将第一步的sql生成的文件的数据导入数据库表中的方案:
LOAD DATA INFILE "/tmp/xxx/xxx" INTO TABLE table_name FIELDS TERMINATED BY ',' ;
注意:如果导出时用到了FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\n'语句,那么LODA时也要加上同样的分隔限制语句。还要注意编码问题。