Dolen

导航

Error Code: 1054. Unknown column '字段名' in 'field list'

问题描述:

j博主在java开发过程中,通过读取excel中表名和字段名,动态创建insert的SQL语句,在mysql可视化工具中执行此SQL语句时,一直提示“Error Code: 1054. Unknown column '字段名' in 'field list'。

明明数据库的表中,存在此字段,为什么提示字段不存在。于是我就拿代码生成的字段名和数据库的字段名长度对比,好家伙,发现字段名相同,但长度不同,如下图所示:

 

解决方法:

通过对比,长度不同说明是字符串编码格式不对,java代码中读取excel表中字段名的编码格式为带BOM的utf8的,所以字段名是带有符号,因此要保证生成的字段名长度和数据库中字段名长度一致,则

需要通过一下代码处理:

1 if (item.substring(0, 1).contains("\uFEFF")) {
2   item = item.substring(1);
3 }

经过此项处理后,生成的SQL语句则不会再报找不到字段的错误。

 

posted on 2021-11-07 23:16  Dolen  阅读(1868)  评论(0编辑  收藏  举报