-
-
韦韬然 数据老手Lv5
发表于2018-12-17 14:39
悬赏20
已解决
楼主
本帖最后由 韦韬然 于 2018-12-17 14:46 编辑
起因:迁移bi的默认连接池至另一个数据库,两个数据库的字符集不同。现象:由于字符集不同,对某些字符识别出来的长度有差异,导致有些系统表某些字段的长度不够,因此有些数据无法迁移过去,于是扩充了某些表的字段长度,比如es10_log 和es10_role这两张表。将某些字段的长度增加后,所有的数据都迁移过去了。但是启动后报错,报错内容:
然后我开启了debug模式查询报错原因,发现bi竟然试图把我已经增加完长度的字段改回去。所以报这个错。
疑问:为什么bi要把字段长度改小???????????
起因:迁移bi的默认连接池至另一个数据库,两个数据库的字符集不同。现象:由于字符集不同,对某些字符识别出来的长度有差异,导致有些系统表某些字段的长度不够,因此有些数据无法迁移过去,于是扩充了某些表的字段长度,比如es10_log 和es10_role这两张表。将某些字段的长度增加后,所有的数据都迁移过去了。但是启动后报错,报错内容:

然后我开启了debug模式查询报错原因,发现bi竟然试图把我已经增加完长度的字段改回去。所以报这个错。
疑问:为什么bi要把字段长度改小???????????
13个回答
启动报错是因为先对比表结构,表结构不一致才去执行sql修复,重新建表的sql是从xml读取的,找到对应的xml修改下表字段结构就可以了