1. 程式人生 > >mysql匯入csv格式檔案(使用sql語句進行匯入)

mysql匯入csv格式檔案(使用sql語句進行匯入)

使用下列語句進行匯入資料:(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:\ )