- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLでのcsvファイル読み込み)
MySQLでのcsvファイル読み込みで問題発生、解決策を教えてください
このQ&Aのポイント
- MySQL上でのcsvファイル読み込みで問題が発生しています。テーブルに1件しかデータが格納されない状態です。
- 必要なデータをcsvファイルから読み込んでMySQLテーブルに格納しようとしていますが、うまくいっていません。
- 47都道府県の番号と地名が書かれたcsvファイルをMySQLテーブルにインポートする際に問題が起きています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
正直これだけの情報ではなんとも・・・・。可能性としてはラインターミネーターが\r\nじゃなくて\nなので全部が1行と解釈されて最初の2列だけに反応しているとかかね。 ↓の2つを試してみてその結果を教えてもらえますか。\r\nを\nと\rにそれぞれしたものです。 1. LOAD DATA INFILE "Prefecture.csv" -> INTO TABLE Prefecture FIELDS TERMINATED BY "," -> LINES TERMINATED BY "\n"; 2. LOAD DATA INFILE "Prefecture.csv" -> INTO TABLE Prefecture FIELDS TERMINATED BY "," -> LINES TERMINATED BY "\r";
お礼
質問者です。 この度のご回答、重ねて感謝申し上げます。 大変申し訳ないのですが、今回発生した問題について、 自己で解決できてしまいました。 以下に解決した方法を記載します。 mysql> LOAD DATA INFILE"Prefecture.csv" -> INTO TABLE Prefecture FIELDS TERMINATED BY "," Query OK, 47 rows affected (0.33 sec) Records: 47 Deleted: 0 Skipped: 0 Warnings mysql> select * from Prefecture; +---------+-----------+ | PREF_CD | PREF_NAME | +---------+-----------+ | 1 | 北海道 | 2 | 青森県 | 3 | 岩手県 | 4 | 宮城県 (中略) | 46 | 鹿児島県 | 47 | 沖縄県 | +---------+-----------+ 47 rows in set (0.00 sec) 以上のように、改行コードを指定する一文 -> LINES TERMINATED BY ~ を抜かしたところ、データが正常に読み込まれました。 この度はお騒がせ致しましたことをお詫び申し上げるとともに、 ご回答戴きましたこと、大変感謝致します。
補足
ご回答ありがとうございます。 お答にありました2つについて、試してみましたところ 以下のような結果が出ました。 ・1つめ mysql> LOAD DATA INFILE"Prefecture.csv" -> INTO TABLE Prefecture FIELDS TERMINATED BY "," -> LINES TERMINATED BY "\n"; Query OK, 1 row affected, 1 warning (0.34 sec) Records: 1 Deleted: 0 Skipped: 0 Warnings: 1 mysql> select * from Prefecture; +---------+-----------+ | PREF_CD | PREF_NAME | +---------+-----------+ | 1 | 北海道 2 | +---------+-----------+ 1 row in set (0.00 sec) ・2つめ mysql> LOAD DATA INFILE"Prefecture.csv" -> INTO TABLE Prefecture FIELDS TERMINATED BY "," -> LINES TERMINATED BY "\r"; Query OK, 1 row affected, 1 warning (0.25 sec) Records: 1 Deleted: 0 Skipped: 0 Warnings: 1 mysql> select * from Prefecture; +---------+-----------+ | PREF_CD | PREF_NAME | +---------+-----------+ | 1 | 北海道 2 | +---------+-----------+ 1 row in set (0.00 sec) 以上の通り、問題の解決には至りませんでした。 申し訳ありませんが、再度お力添えをお願いします。