2011-11-13 40 views
3

私はCSVをmysqlにインポートしようとしましたが、私のDateTimeカラムは正常にインポートされません。私はこの上でいくつかの他の記事を見つけましたが、他の記事のいずれか:"Load Data Local Infile"を使用してcsvからmysqlにインポートするときにDateTimeカラムが切り捨てられました

としてインポートされます

これは私がやっているものです:

Cmd.exe: echo "1","2011-11-08 17:33:33" > foo.csv 

Mysql: 

CREATE TABLE `foo` (SomeId INT, SomeDateTime DATETIME); 

LOAD DATA LOCAL INFILE "c:\\tmp\\foo.csv" 
INTO TABLE `foo` 
FIELDS TERMINATED BY ',' 
ENCLOSED BY '\"' 
LINES TERMINATED BY '\n' 

は、行がインポートされるが、代わりに私が入力した日付の0000-00-00 00:00:00であり。方法を組み込みのLOAD DATAコマンドを使用して解決する - データを挿入するスクリプトを作成せずに?

+1

Iは同じデータでクエリを試みたと –

+0

MariaDB 5.3は、あなたの問題に本当に答えるのではなく、** DATETIMEに**マイクロ秒**をサポートしています。 、 'TIME'と' TI MESTAMP'の列:http://www.chriscalender.com/?p=363 –

答えて

0

余分な空白が原因でインポートにいくつかの問題がありました。 私のファイルは実際には "、"(カンマ+スペース)で区切られ、 "、"ではなく、\nではなく、\r\nで終了しました。 LOAD DATA INFILEの 'E:/ C:\ TMP \ foo.csv' あなたのCSVで

1

(注)DATETIME列LIKE '2012年1月1日午前8時00分00秒' を指定する必要がファイルには、これを試してみてください 表FOO場によってTERMINATED ' " '' BY TERMINATED BY ENCLOSED行に '\ R \ n' は1 LINES (
SomeId、 SomeDateTime )を無視;

関連する問題