次のコマンドを使用して.CSVファイルからMySQLデータベースにデータをロードしようとしています。データベースに情報をロードしようとしたとき、次のエラーは、MySQLによって返されるしかしMySQL - データをファイルにロード日付フィールドのエラーを返す
LOAD DATA LOCAL INFILE "FILEPATH/EQUIPMENT.CSV"
INTO TABLE EQUIPMENT
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\R\N'
IGNORE 1 LINES;
:このエラーは、どんな意味がありません
Error Code: 1292. Incorrect date value: '0000-00-00' for column 'END_OF_LIFE' at row 1
。値 '0000-00-00'がデータセットの行1に指定されていないためです。以下のデータセットの例を参照してください。
+---------------+-------------+
| EQUIPMENT_ID | END_OF_LIFE |
+---------------+-------------+
| B1010-V003 | 1800-01-01 |
| B1010-V001 | 1800-01-01 |
| B1010-V005 | 1800-01-01 |
+---------------+-------------+
システムでこのエラーが返される理由は何ですか? (私はより合理的な値に日付を変更しようとしましたが、これはどちらも動作しません)。私は実際に間違っていたものを考え出し
/usr/bin/mysql --local-infile=1 -u$DB_user -p$DB_pw --database=$DB_database < $working_dir/load_ic2_loc_batch.sh 2>> $logfile
ありがとうございました。コマンドプロンプトでこのコマンドを実行するのですか?あなたはその使い方について少し詳しく説明できますか? ! – Josh
は申し訳ありませんが私は、上記のいずれかがバッチファイルで実行すると、次の起動することを意図され、間違ったファイルを送った。#/ binに/ SHを LOAD DATA LOCAL INFILE BY TERMINATED '/ .CSV' TABLE INTO FIELDS '、' ENCLOSED BY '' '' LINES TERMINATED BY '\ r \ n' IGNORE 0 LINES; –
Paul
心配する必要はありません。 – Josh