mysql基础(4)-数据导入
如何把数据导入(出)mysql
导出
- sql语句
select * from 表名 into outfile "详细路径" fields terminated by "," enclosed by "";
- 命令行
mysqldump
- 客户端
- sql语句
- 命令行
- 客户端
如何把数据导入pandas
导入
data=pd.read.csv(imputfile) #读取数据
df=DataFrame(data) #把数据转换为DataFrame格式
验证
实验数据-在/tmp目录下有文件stud_info.csv
统计文件行数:cat stud_info.csv|wc -w
查看文件前5行内容:head -5 stud_info.csv
导入数据
将/tmp/目录下的stud_info.csv导入表stud_info中,忽略第一行
mysql> load data infile '/tmp/stud_info.csv' into table stud_info fields terminated by "," ignore 1 lines;
注释:terminated by ","表示这个文件的列是按逗号来分隔的; ignore 1 lines表示导入表中的时候忽略第一行表头
导出数据
mysql> select * from stud_info into outfile '/tmp/stud_info_wu1.txt' fields terminated by "," enclosed by "";
注释:terminated by ","表示导出来的文件列与列之间用逗号分隔;enclosed by ""表示导出来的每一列不加任何东西
将数据导入pandas
In [1]: import numpy as np In [2]: import pandas as pd In [3]: from pandas import DataFrame In [4]: inputfile1='/tmp/stud_info.csv' In [5]: data = pd.read_csv(inputfile1) In [6]: df = DataFrame(data)
In [8]: df.columns
In [9]: df.head(2)
In [10]: df.tail(2)
wc命令
格式:wc -【参数】file
wc -l file # 显示文件行数
wc -w file #打印单词数
练习:
编写一个shell脚本把stud_info.csv导入表(表各自定义);把stud_info.csv导入pandas;验证导入数据的正确性。
1 #!/bin/bash 2 #文件名称:import_mysql 3 #文件功能:将stud_info.csv导入stud_info表中 4 #创建作者:邬家栋 5 #创建时间:2016-07-29 6 7 rows_file=`cat /tmp/stud_info.csv|wc -l` #注意这里是反引号 8 echo "stud_info.csv一共有${rows_file}行" 9 10 #要先连接数据库 11 mysql -u feigu_mysql -p testdb << EOF 12 drop table if exists wu_stud_info; 13 create table wu_stud_info( 14 stud_code varchar(20) not null, 15 stud_name varchar(100) not null, 16 stud_gend varchar(10) not null default "M", 17 birthday date null, 18 log_date date null, 19 orig_addr varchar(60) null, 20 lev_date date null, 21 colledge_code varchar(10) null, 22 colledge_name varchar(300) null, 23 state varchar(20) null, 24 primary key(stud_code) 25 ); 26 27 load data infile '/tmp/stud_info.csv' into table wu_stud_info fields terminated by ',' ignore 1 lines; 28 29 EOF 30 31 if [ $? -eq 0 ] ; then 32 echo "操作成功" 33 else 34 echo "操作失败" 35 36 fi
注释:在写默认值的时候,默认值需要用引号引起来。
注意:if语句一定不要忘记写fi结尾。if后面中括号需留空格
1 #!/bin/bash 2 #文件名称:pandas_import.sh 3 #文件功能:将stud_info.csv 导入到padans中 4 #创建时间:2016-07-29 5 #创建者:邬家栋 6 7 ipython << EOF 8 9 import numpy as np 10 import pandas as pd 11 from pandas import DataFrame 12 inputfile1 = '/tmp/stud_info.csv' 13 data= pd.read_csv(inputfile1) 14 df=DataFrame(data) 15 16 EOF 17 18 if [ $? -eq 0 ] ;then 19 echo "操作成功" 20 else 21 echo "操作失败" 22 fi