私はLOAD DATA INFILE
MySQLコマンドを使用して、MySQLテーブルに挿入したいいくつかの行を含むcsvファイルを持っています。コマンドを使用すると、挿入が準備されているとき、挿入された特殊文字はすべて乱されます。ファイルには文字が正しく格納されています(EditPlusのようなエディタでファイルを開くと、特殊文字はすべて文字化けしますが、EmEditorのような別のエディタで開くと特殊文字が正しく表示されるため)。特殊文字がコラージュutf8_general_ci
のテキストを保持し、varchar
カラムまたはtext
カラムのいずれかです。テーブルはInnoDB
テーブルで、照合順序はutf8_general_ci
に設定されています。私は、次のパラメータを使用して、MariaDBのコマンドラインから、LOAD DATA INFILE
のコマンドを実行します。MySQLデータベースに特殊文字(cyrilic、chinese)
LOAD DATA INFILE '/path/to/csv/file' INTO TABLE tablename FIELDS TERMINATED BY '|' ENCLOSED BY '"' LINES TERMINATED BY '\r\n';
問題は何ができるかの任意のアイデア、そして可能な解決策は何ができますか?
ありがとうございます!
編集:私はまた、成功しません、LOAD DATA INFILE
1を使用する前に、SET NAMES "utf8";
コマンドを使用してみました:|
中国語の場合、 'utf8'の代わりに' utf8mb4'が必要な場合があります。いくつかの絵文字と漢字はutf8mb4でのみ利用できます。 (キリル文字もどちらでもうまく動作します) –
漢字でさえも欺瞞の解決策で動作するようです。 –
_ほとんどの漢字は 'utf8'で動作します。 4バイトのエンコーディングだけが失敗します。 –