load data local infileを使用してcsvファイルをmysqlデータベースにインポートしようとしています
私のcsvファイルは次のようになります:
1;Lubos;Chrapna;92;muz;Topolcany
2;Branislav;Grecni;28;muz;Topolcianky
3;David;Forgac;57;muz;Hronsky Benadik
4;Imrich;Doci;58;muz;Kosice
この cvs ファイルを配置したいテーブルは次のようになります。
CREATE TABLE IF NOT EXISTS DIM_zakaznik (
id int(5),
meno varchar(15),
priezvisko varchar(15),
vek int(15),
pohlavie varchar(15),
bydlisko varchar(15))
私のクエリは次のようになります。
load data local infile 'dim_zakaznik.csv' into table DIM_zakaznik
fields terminated by ';'
enclosed by '\n'
lines terminated by '\n';
それは問題なく動作し、phpMyAdmin でそのテーブルを見るとすべて問題ないように見えますが、select を実行しようとすると、最後の列 (「bydlisko」と呼ばれる) が無視されるという問題があります。
たとえば、私はこれを試します:
SELECT * FROM `dim_zakaznik` WHERE `bydlisko`='Topolcany'
「MySQL は空の結果セットを返しました (つまり、行がありません)。(クエリに 0.0184 秒かかりました)」
空の結果であってはなりませんよね?その最後の列だけでは機能していません。その理由はわかりません。以前にそれらの列で試してみたときに、別の列を追加しました (その列はテーブルの最後でした)。他の列は無視されました (テーブルの最後の列でした)。
助けていただければ幸いです。前もって感謝します!