MySQL LOAD DATA INFILE解析

來源:互聯網
上載者:User

標籤:io   os   使用   sp   on   檔案   資料   bs   ad   

LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE‘file_name.txt‘ [REPLACE | IGNORE]

INTO TABLE tbl_name
    [FIELDS
        [TERMINATED BY ‘\t‘]
        [OPTIONALLY] ENCLOSED BY ‘‘]
        [ESCAPED BY ‘\\‘ ]]
    [LINES TERMINATED BY ‘\n‘]
    [IGNORE number LINES]
    [(col_name,...)]

 

自訂文法

FIELDS和LINES總的使用規則就是(在匯入與匯出的過程中by後面的符號一定要一致)
Load Data InFile ‘C:/Data.txt‘ Into Table `TableTest` Fields Terminated By ‘,‘Enclosed By ‘"‘ Escaped By ‘"‘ Lines Terminated By ‘\r\n‘;

Fields Terminated By ‘,‘ Enclosed By ‘"‘ Escaped By ‘"‘
表示每個欄位用逗號分開,內容包含在雙引號內

Lines Terminated By ‘\r\n‘;
表示每條資料用分行符號分開

 

REPLACE和IGNORE關鍵詞控制對現有的唯一鍵記錄的重複的處理。如果你指定REPLACE,新行將代替有相同的唯一鍵值的現有行。如果你指定IGNORE,跳過有唯一鍵的現有行的重複行的輸入。如果你不指定任何一個選項,當找到重複鍵鍵時,出現一個錯誤,並且文字檔的餘下部分被忽略時

 

如果你不指定一個FIELDS子句,預設值與如果你這樣寫的相同:

FIELDS TERMINATED BY ‘\t‘ ENCLOSED BY ‘‘ESCAPED BY ‘\\‘

如果你不指定一個LINES子句,預設值與如果你這樣寫的相同:

LINES TERMINATED BY ‘\n‘ 

FIELDS和LINES總的使用規則就是(在匯入與匯出的過程中by後面的符號一定要一致)
換句話說,預設值導致讀取輸入時,LOAD DATA INFILE表現如下:

在分行符號處尋找行邊界 
在定位器處將行分進欄位 
不要期望欄位由任何引號字元封裝 
將由“\”開頭的定位器、分行符號或“\”解釋是欄位值的部分字面字元.

 

MySQL LOAD DATA INFILE解析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.