load data local 无法SET中文

load data local infile #{path} ignore into table myd_boss character set utf8 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (netPhone,netTcbm,netTcmc,netTime,netPrestore)

order=#{order},type=#{yewuType},dishi='汉中',createUser=#{accountName},createTime=NOW(),uuid=UUID();

        以上代码dishi 为汉中过的哪一列无法正常入数据库,数据库总是为空值
        请教大神指导解决,在线等

图片说明

首先关于数据库数据的导入也学习到一个新方法

LOAD DATA LOCAL INFILE 'C:/Users/Administrator/Desktop/user_info.txt' INTO TABLE   user_info character set utf8

把'C:/Users/Administrator/Desktop/user_info.txt'的数据按记录格式存入到user_info表中;同时user_info.txt中存放数据记录,而数据记录里面的每个元素之间要分隔开,这样就可以自动导入数据了。

    我们导入数据时也会导入中文,但是我们利用本地文件导入时经常会发生中文乱码。解决中文乱码要从以下几个方面入手(不分先后,实际排错也分不了先后)。

第一,如果在Mysql Comment line Client中先输入 set names 'utf8'; 或者 set names 'gbk'; 看看中文乱码有没有解决,,然后再重新导入数据看看;

第二,如果没有看看你的导入语句 LOAD DATA LOCAL INFILE中有没有加character set utf8,,然后再重新导入数据看看;

第三,如果还是不行,还要看看你存数据的txt文档是用什么编码编的,打开这个数据文档,点击另存为,设置编码格式为utf-8(图三),然后再重新导入数据看看;

第四,如果发现上面的方式都不行,那就得用show variables like "%char%";看到图四查询出来的Variables的value有不是utf8的,所以要把他们都改成utf8,那个二进制的除外。

SET character_set_client = utf8 ;  
        SET character_set_connection = utf8 ;
     SET character_set_database = utf8 ;
 SET character_set_results = utf8 ; 
SET character_set_server = utf8 ; 
SET collation_connection = utf8 ; 
 SET collation_database = utf8 ; 
 SET collation_server = utf8 ;

修改完之后,再把数据导入,应该就不会出现中文乱码的问题。