Quick BI中MySQL数据源上传excel,报错“存在上传失败行,可能由于字段类型自动解析错误,请检查文件并进入高级设置调整”

更新时间:

问题描述

Quick BI中MySQL数据源上传Excel,报错“存在上传失败行,可能由于字段类型自动解析错误,请检查文件并进入高级设置调整”。

问题原因

由于字符编码不是utf8,插入中文会报该错误。

解决方案

1、在建立表时设置默认字符串编码方式为utf8。

CREATE TABLE test2(ID INT PRIMARY KEY AUTO_INCREMENT, test_name VARCHAR(20) , test_num INT)default charset = utf8;          
/*建立一个表,加上“default charset = utf8”,设置默认字符串编码方式为utf8。*/

insert into test2(test_name) values('你好');                                                      

/*建表之后插入一条带有中文的数据*/

这次就可以成功添加。

 

2、已经添加的表,需要设置一下:ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

ALTER TABLE test CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;                 

/*例如刚刚建立的test表,插入中文时会报错,现在对其进行设置*/

insert into test(test_name) values('你好');             

/*设置之后插入一条带有中文的数据*/

 

3、直接修改数据库的字符串编码属性:ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci

ALTER DATABASE testdb CHARACTER SET utf8 COLLATE utf8_unicode_ci;                                                                

/*修改数据库testdb的编码方式*/

CREATE TABLE testdb.test3(ID INT PRIMARY KEY AUTO_INCREMENT, test_name VARCHAR(20) , test_num INT)default charset = utf8;                        

/*建立一个表,加上“default charset = utf8”,设置默认字符串编码方式为utf8。*/

insert into testdb.test3(test_name) values('你好');                                            

/*建表之后插入一条带有中文的数据*/

适用于

  • Quick BI