2017-02-13 41 views
0

我試圖參考文檔https://dev.mysql.com/doc/refman/5.6/en/load-data.htmlMYSQL INFILE CONCAT

ID1, ID2, ID3, Date, Time, plateNumber, ID4, Status 
1 7 1 2017-08-15 11:18:00 SGA7387T 97871 1 

這是我的文本文件

我的數據庫。

ID1, DateTime, ID2, ID3, PlateNumber, ID4, Status. 

我的SQL語句

LOAD DATA INFILE 'C:/table/text/trip.txt' 
into table trip FIELDS terminated by '\t' 
lines terminated by '\r\n' 
ignore 1 lines 
(ID1, ID2, ID3, @DATE, @TIME,plateNumber, ID4,Status) 
SET DateTime = CONCAT(@TripDate,@tripTime); 

沒有錯誤,但0 INSERT ...

回答

0

首先,你要編輯的txt文件。數據中必須有相同的字段分隔符 - 標題中。例如 '' -

ID1,ID2,ID3,Date,Time,plateNumber,ID4,Status 
1,7,1,2017-08-15,11:18:00,SGA7387T,97871,1 

然後,有不同的變量名,@DATE與@TripDate和@TIME與@tripTime問題。

最後,如果DateTime是DATETIME類型,那麼您應該將字符串轉換爲此類型。

所以,在這裏它是一個結果查詢 -

LOAD DATA INFILE 'C:/table/text/trip.txt' 
into table trip FIELDS terminated by ',' 
lines terminated by '\r\n' 
ignore 1 lines 
(ID1, ID2, ID3, @DATE, @TIME, plateNumber, ID4, Status) 
SET DateTime = STR_TO_DATE(CONCAT(@DATE, ' ', @TIME), '%Y-%m-%d %h:%i:%s'); 

不要忘了LOCAL關鍵字,如果文件位於客戶端主機上。