美文网首页
sharding-jdbc 分库分表报java.lang.Boo

sharding-jdbc 分库分表报java.lang.Boo

作者: 傑terry | 来源:发表于2019-11-23 17:27 被阅读0次

项目简介

最近公司mysql有个表数据量3000多W决定分表,用sharding-jdbc插件做分表,根据字段taskId做分片路由。

问题现象

where中带有分片键的查询没有问题,对于没有的带分片键的查询会报错

Cause: java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.Integer

并且查询有的数据报错,有的数据不报错。

原因

是由于mysql中的 tinyint(1) 类型的字段mysql默认当作boolean型处理在转成int时出错,将 tinyint(1) 改为int(1) 或者 tinyint(2) 后不再报错。
或者jdbc加上:tinyInt1isBit=false

疑惑

不知道为什么 带有分片键的sql 就不会有这个问题?
路过的大神可以一起讨论下。

相关文章

网友评论

      本文标题:sharding-jdbc 分库分表报java.lang.Boo

      本文链接:https://www.haomeiwen.com/subject/rlihwctx.html