问题
出现这种问题一般来说就是多表操作的时候, 使用的字段类型不一致导致的(查询除外),我们来看下真实案例

在hd_user表中parentId是binint类型 而在hd_user_increment_copy1`表中parentId是varchar类型, 如果只是查询的话那么是不会报错的,我把查询sql提出了运行是可以的

是不是就无语了,为啥查询里可以,那么在update中就不行 ,研究了半天我也没搞懂只能推给mysql查询内部进行优化了在比对数据时候都转换为字符串进行比较,但是一旦掺杂增删改那么就不会进行类型自动转换为字符串,而是使用原始类型进行比较, 然后在比较的时候发现类型不一致进行报错了
解决办法
解决方案是将数据类型都转换为一样的即可

通过上面的启发,我又试了试插入,将查询出来的数据插入到一个相同结构的空表里,发现还是上面的问题

解决办法一样,加上数据类型转换即可


![[附源码]计算机毕业设计springboot保护濒危动物公益网站](https://img-blog.csdnimg.cn/fef25df62aef442dbd9c6c3a1231dd76.png)


















