使用下列语句进行导入数据:(windows环境下,如果为linux环境,最后一个换行符应改为‘\n’)

load data infile 'C:/test1.csv' 
into table table_name 
fields terminated by ',' 
optionally enclosed by '"' 
escaped by ',' 
lines terminated by '\r\n'
ignore 1 lines;
以上是一句sql,太长了所以我按行分开了


1.load data infile语句从一个文本文件中以很高的速度读入一个表中。


2.csv文件中,域一般用逗号分隔(即fields terminated by ','),域的字段值一般用一对双引号包裹(optionally enclosed by '"'有时候是个带双引号的字符串,根据不同csv再进行修改,也可以删除此句),换行一般用‘\r\n’(windows下即lines terminated by '\r\n')。一般情况下,csv文件中第一行一般是每列属性的名称,因此在导入数据库时应省略第一行(即 ignore 1 lines;也可省略不写)


3.

escaped by

分为两种情况,

escaped by','

escaped by'"'

一般escaped by','lines terminated by '\r\n'有对应关系,如果用escaped by'"',即引号分隔,则只有将lines terminated by改成'\n'才能导入,并且此时不能ignore 1 lines.


terminated by分隔符:意思是以什么字符作为分隔符
enclosed by字段括起字符
escaped by转义字符

terminated by 描述字段的分隔符,默认情况下是tab字符(\t)
enclosed by描述的是字段的括起字符。

escaped by描述的转义字符。默认的是反斜杠(backslash:\ )  

Logo

更多推荐