在load csv 進mysql的時候,報這個錯,苦惱了很長時間,網上搜索不到答案。
mysql> load data infile '/home/hdh/8_sr/8_45.csv' into table xizang.fp45 fields terminated by ',' escaped by '"' lines terminated by '\r\n';
解決方案:
1.查看字符集,Linux, 數據庫,表
mysql> show variables like 'character%';
+--------------------------+-----------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /home/mysql/share/charsets/ |
+--------------------------+-----------------------------+
8 rows in set (0.01 sec)
都是utf8,沒有問題,
2.只能對這個文件進行特殊字符的清理了,一般遇到這個都是因為字符中間多了“\” 轉義字符。
一般遇到特殊字符的時候會提示多少行,什麼字符導致的出錯,但是這個“\”,不會有這麼詳細的提示。
對這個文件 sed -i 's/"//g' filename #刪除文件中的"
sed -i 's/\\//g' filename #刪除文件中的\
重新load ok
http://xxxxxx/Linuxjc/1183307.html TechArticle