嘗試使用mysql工作臺Table Data Import Wizard
將數據從csv導入到Mysql數據庫。 csv包含格式爲dd/mm/yyyy hh:mm:ss的數據時間字段(例如,28/01/2017 10:55:00 PM)。 如果我按默認設置轉到,工作臺將日期時間視爲「TEXT」數據類型併成功導入數據。但是,如果我將數據類型更改爲'DATETIME',則導入將以'0記錄導入'結束。MySql Workbench csv將日期時間DATATYPE導入爲TEXT
1
A
回答
1
MySQL數據庫的日期時間格式是YYYY-MM-DD HH:MM:SS ... 請查看下面的文檔。 希望這有助於..... https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwjIyOHXvJvSAhWGtY8KHcsSB8MQFggdMAE&url=https%3A%2F%2Fdev.mysql.com%2Fdoc%2Fen%2Fdatetime.html&usg=AFQjCNGc5DXXoRcxKpV46ARaMvjZVVL4ZA&sig2=kBy0FVFl_4feRkkfiPyoeg
0
日期格式dd/mm/yyyy
不是標準,因此MySQL是把它當作文本。並迫使它加載日期時間這樣的數據也是錯誤的。
這個問題是與STR_TO_DATE()
函數的日期字符串轉換成合適的日期以及適合於LOAD DATA
:
LOAD DATA INFILE 'input.csv'
INTO TABLE t1
FIELDS TERMINATED BY ','
(column1, @var1, column3, ...)
SET column2 = STR_TO_DATE(@var1,'%d/%m/%Y %h:%i:%s %p')
如果CSV文件中的第二列包含日期數據的上述LOAD DATA
將是適當的。如果不是,那麼只需重新排列它,以便正確的列被解析。