mysql导入导出csv文件

问题:为什么要导入导出为csv文件呢?

(1)所谓大数据处理,仅仅关心某些列的数据,而非整个表结构,这些数据就需要保存为csv通用的存储格式,不仅可以在widows下作为文本文件进行处理;也可以在hadoop分布式系统上上进行处理;

(2)mysql 数据库 迁移为 Oracle 、SQLServer数据库,或者反过来,由于各自的设计不同,不能直接的导入导出为dmb sql等格式的文件,可能需要数据的导出导入为csv,而数据表结构的设计可能得通过其它途径。

一:MYSQL如何导出文本文件  (备份为csv,txt,等,更加有用)

(1):mysql 下导出为指定格式的数据的外部任意文件类型  mysql> 

use dbname

Database Changed

select * from pollution into outfile ‘G:\\arcgisworkspace\\zypdoc\\text.txt‘; (指导出数据的,注意转义字符哦)

SELECT * FROM pollution INTO OUTFILE  ‘G:\\arcgisworkspace\\zypdoc\\text.csv‘ FIELDS TERMINATED BY ‘\,‘; (输出格式控制)

结果为:

1,汽车尾气,200

2,建筑扬沙,180

3,汽车喷漆,160

4,燃煤,240

5,其它,80

(2) 知识补充:

一般形式:SELECT [列名称] FROM tablename [where]

INTO OUTFILE  ‘目标文件路径‘ [option]

其中option参数常用的5个选项

FIELDS TERMINATED BY ‘字符串’:设置字符串为字段的分割符,默认值为 \t;

FIELDS ENCLOSED BY ‘字符’:设置字符串括上char varchar text等字符型字段,默认值为 无任何符号;

FIELDS OPTIONALLY ENCLOSED BY ‘字符’:设置字符串括上字段的值,默认值为 无任何符号;

LINES STARTING BY ‘字符串’:设置每一行开头的字符,默认值为 无任何字符;

FIELDS ESCAPED BY ‘字符’:设置转义字符,默认值为 \;

LINES TERMINATED BY ‘字符串’:设置每行结束符,默认值为 \n;

如:

SELECT * FROM pollution INTO OUTFILE 'G:\\arcgisworkspace\\zypdoc\\text2.csv'
FIELDS TERMINATED BY '\,' OPTIONALLY ENCLOSED BY '\"'
LINES STARTING BY '\>' TERMINATED BY '\r\n';

结果为:

>1,"汽车尾气","200"

>2,"建筑扬沙","180"

>3,"汽车喷漆","160"

>4,"燃煤","240"

>5,"其它","80"

(3):mysqldump 下导出为指定格式的数据的外部任意文件类型  C:\Program Files\MySQL\MySQL Server 5.5\bin>

mysqldump -u root -p -T G:\arcgisworkspace\zypdoc\ abc pollution "--fields-terminated-by=," (记住不要任何多余的空格,也不用转移字符;-p后面也不用写password;注意目

标目录是文件夹,文件名是表名,后缀是txt文件)

(4)知识补充:

mysqldump -u root -p -T 目标目录 dbname tablename [option]

option 和 上面的mysql的一样,只是更改为

"--fields-terminated-by=字符"(不要任何多余的空格,就是指fields-terminated-by紧密相连的)

二:MYSQL如何导入文本文件  (更加有用)

(1)mysql 下导出为指定格式的数据的外部任意文件类型  mysql> 

第一步:创建对应字段的数据表

create table csv_test2(
id int(8) primary key,
name varchar(64),
value int(32)
);

(2)插入:加入value的类型开始时设计错了,如何更改:ALTER table csrv_test2 MODIFY column value varchar(32);

(3)第二步:导入外部数据

LOAD DATA INFILE 'D:\\tjdata_metro\\test\\mysql_infile3.csv'
INTO TABLE csv_test2
FIELDS TERMINATED BY '\,'
OPTIONALLY ENCLOSED BY '\"'
LINES TERMINATED by'\r\n'
ignore 1 lines
(id,name,value);

上面的 lines terminated by ‘\r\n‘ 是 要求换行符号,为 windows的换行

上面的 ignore 1 lines是 忽略第一行的标题行。

(3) 更加详细的数据库导入导出请见:mysql 数据库导入导出方法总结(是时候总结)

时间: 2024-10-27 07:23:16

mysql导入导出csv文件的相关文章

php 导入/导出 csv 文件

php 导入/导出 csv 文件 1.简介 项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用原生PHP,实现了CSV格式数据的导入和导出功能.并解决相关乱码问题. 将xls转换成csv的文本格式,然后再用php分析这个文件,和PHP分析文本没有什么区别.优点:跨平台,效率比较高.可以读写.缺点:只能直接使用csv的文件,如果经常接受.xls二进制文件的话需要手工转换,不能自动化.一个文件只有一个SHEET. 2.相关函数介绍 2.1

MySQL导入导出.sql文件及常用命令

MySQL导入导出.sql文件及常用命令 在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   c:\\test.sql; 另附mysql常用命令: 一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:/mysql/bin,再键入命令my

mysql SQLyog导入导出csv文件

1.选择数据库表 --> 右击属性 --> 备份/导出 --> 导出表数据作为 --> 选择cvs --> 选择下面的“更改” --> 字段 --> 变量长度 --> 字段被终止 -->输入逗号,(这是重点,否则导出的csv文件内容都在一列中,而不是分字段分列)下面两个选项框取消. 2.导出csv文件后,使用UE编辑器打开,另存为,选择编码为utf-8格式,保存. 3.打开csv文件,这样中文为正确的显示,如果不转码保存的话,为中文乱码. 4.选择数据

Bash中使用MySQL导入导出CSV格式数据[转]

转自: http://codingstandards.iteye.com/blog/604541 MySQL中导出CSV格式数据的SQL语句样本如下: select * from test_info into outfile '/tmp/test.csv' fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\r\n'; MySQL中导入CSV格式数据的SQL语句

[转]PL/SQL Developer 导入导出csv文件

PL/SQL Developer 可以导入或者导出CSV文件. 导入CSV文件步骤: 1.选择tools->text importer.... 2.选择第二个Data to oracle选项卡,然后选择Open Data file....,选择要导入的csv文件,确定 3.选择对应的owner和table,将字段一一对应,最后点击下方的导入,数据即导入到了选定的table中了. 导出csv文件相对比较简单: 1.先用sql语句查询得到结果 2.选择export query results ...

命令行模式下 MYSQL导入导出.sql文件的方法

一.MYSQL的命令行模式的设置:桌面->我的电脑->属性->环境变量->新建->PATH=“:path\mysql\bin;”其中path为MYSQL的安装路径.二.简单的介绍一下命令行进入MYSQL的方法:1.C:\>mysql -h hostname -u username -p  .C:\>mysql -h localhost -u root-p按ENTER键,等待然后输入密码.这里hostname为服务器的名称,如localhost,username为M

导入导出csv文件

在工作中需要把csv文件数据导入数据库或者把数据库数据导出为csv文件.以下是我的简单的实现. 1 <?php 2 class csv 3 { 4 public $db_connection; 5 public $table_name; 6 public $file_path; 7 8 public function __construct($db_connection,$table_name,$file_path) 9 { 10 $this->db_connection=$db_connec

MYSQL导入导出.sql文件(转)

一.MYSQL的命令行模式的设置: 桌面->我的电脑->属性->环境变量->新建-> PATH=“:path\mysql\bin;”其中path为MYSQL的安装路径. 二.简单的介绍一下命令行进入MYSQL的方法: 1.C:\>mysql -h hostname -u username -p 按ENTER键,等待然后输入密码.这里hostname为服务器的名称,如localhost,username为MYSQL的用户名,如root. 进入命令行后可以直接操作MYSQL

mysql导入导出sql文件--读书笔记2

window下 1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u dbuser -p dbname > dbname.sql 2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u dbuser -p dbname users> dbname_users.sql 3.导出一个数据库结构mysqldump -u dbuser -p -d --add-drop-table