保存した後はメモ帳で開いて、文字コードをutf-8に変更して再度保存しました。
一方XAMPPでインストールしたphpMYadminでstudyデータベースを新規に作成しました。
test1テーブルを作成して、id(INT)、url(TEXT)、title(TEXT)、category(TEXT)、hatena(TEXT)、point(TEXT)、since(DATE)、latest(DATE)を入力しました。
インポート->インポートするファイルの形式をCSV、テキストファイルの位置で該当するcsvを参照して、文字セットをutf-8に設定しました。
この状況でアップロードしたところ、CSV 入力のフィールド数が不正です (行: 1)と表示されました。
自分でもいろいろ原因を考えてみましたが、解決方法がわかりませんでした。
このエラーを回避し、データをインポートする方法を教えてください。よろしくお願いします。
メモ帳でのUTF-8変換はBOMと呼ばれるコードを自動的に埋め込んでしまったりするため正しくインポートできません
他のエディタを用いてUTF-8に変換するか、もしくは(データベースやphpMyAdminの文字コードにもよりますが)Excelで作成したCSVをそのまま手を加えることなくphpMyAdminでインポートさせるほうが良いでしょう
ご利用のパソコンのメーカー名、機種名が分からないので何とも言えませんが、まず、Windows7にアップグレードする前に、Microsoftの「Windows 7 Upgrade Advisor」を使い、アップグレード可能なスペックがあるかどうか調べてみましょう。
可能だという判定が出たとしても、次のデバイスのWindows7用のものは必須です。
昨日から少し行ったこともあるので、その部分も加えて一度、書きなおさせていただきます。
windofjulyさんから指摘を受けたので、一度、質問時点で作成していたcsvファイルは破棄しました。
csvファイルを作成した元となったxlsxファイルを開き、再度csv形式で保存しました。
このcsvファイルを秀丸エディタで開いたところ、SHIFT-JIS形式の文字コードになっていましたので、秀丸エディタで「名前を付けて保存」→「文字コード:unicode(utf-8)」で、別のフォルダに保存を実行しました。
この時点で、文字コードがutf-8とSHIFT-JISの2種類のcsvファイルがあります。
phpMyAdminを開き、データベース、テーブルと開き、インポートをクリックしました。
アップロードファイルを秀丸エディタで保存したurf-8を文字コードとするcsvファイルを選んだところ、自動でcsvにチェックが入りました。
文字コードをutf-8にセットして、アップロードを実行したら、やはり「CSV 入力のフィールド数が不正です (行: 1)」との表示が出ました。
秀丸エディタで開く前の文字コードがSHIFT-JISのcsvファイルを選んだところ、自動でcsvファイルにチェックが入りました。
文字コードをSHIFT-JISにセットして、アップロードを実行したら、やはり「CSV 入力のフィールド数が不正です (行: 1)」との表示が出ました。
よろしければ引き続き、教えていただけると助かります。
なお、現在インポートしようとしているのは前回windofjulyさんに教えていただいたファイルです。
テキストがPHPとmySQLを組み合わせて練習するところに入ってきたので、その練習に使おうと思いました。
次のようにしてみてください
・秀丸でBOM無しのUTF-8に変換する際には改行コードをCRLF(\r\n)ではなくLF(\n)にしておきます
・「LOAD DATAするCSV」にチェックを入れて下記のようにします
区切り記号 ,
囲み記号 Nullもしくは空白
エスケープ記号 \
終端記号 \n
カラム名 Nullもしくは空白
・xamppが動いているPCと、CSVを保持しているPCが、同一の場合は「LOCAL キーワードを使用する」にもチェックを入れます
ありがとうございます。本当に感謝です。
またなにかあった際には、よろしくお願いします。