您的位置:首页 > 数据库 > MySQL

mysql数据导入Load时,出现编码错误。

2017-03-02 17:00 459 查看
mysql数据导入:

LOAD DATA INFILE '/var/lib/mysql-files/bash/yes' INTO TABLE inner_outer_hotel_gx_tb

FIELDS TERMINATED BY '\t'

LINES TERMINATED BY '\n' (inner_hotel_id,outer_hotel_id,outer_channel_id,outer_hotel_name);

会出现的问题:

    mysql 数据导入:load时,出现的错误解决办法

问题:数据字符集格式不正确,导致数据插入不完整,报错。

解决:将 no 里的不符合要求的字符替换。

1、编写bash脚本。

     deletenotutf8.sh

                 while read line

                do

                a=`echo -e "$line"|iconv -f utf8 -t gbk `

               if [ $? -eq 0 ];then

               echo "$a"|iconv -f gbk -t utf8

              fi

              done

2、执行下面语句,生成一个新的文件 yes(替换掉所有不符合要求的字符)

       cat no | iconv -c -f utf8 -t gbk | iconv -c -f gbk -t utf8 | bash deletenotutf8.sh > yes

3、重新load生成的文件 yes
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: