问题
出现这种问题一般来说就是多表操作的时候, 使用的字段类型不一致导致的(查询除外),我们来看下真实案例
在hd_user
表中parentId是binint类型 而在hd_user_increment_copy1
`表中parentId是varchar类型, 如果只是查询的话那么是不会报错的,我把查询sql提出了运行是可以的
是不是就无语了,为啥查询里可以,那么在update中就不行 ,研究了半天我也没搞懂只能推给mysql查询内部进行优化了在比对数据时候都转换为字符串进行比较,但是一旦掺杂增删改
那么就不会进行类型自动转换为字符串,而是使用原始类型进行比较, 然后在比较的时候发现类型不一致进行报错了
解决办法
解决方案是将数据类型都转换为一样的即可
通过上面的启发,我又试了试插入,将查询出来的数据插入到一个相同结构的空表里,发现还是上面的问题
解决办法一样,加上数据类型转换即可
点赞 -收藏-关注-便于以后复习和收到最新内容
有其他问题在评论区讨论-或者私信我-收到会在第一时间回复
在本博客学习的技术不得以任何方式直接或者间接的从事违反中华人民共和国法律,内容仅供学习、交流与参考
免责声明:本文部分素材来源于网络,版权归原创者所有,如存在文章/图片/音视频等使用不当的情况,请随时私信联系我、以迅速采取适当措施,避免给双方造成不必要的经济损失。
感谢,配合,希望我的努力对你有帮助^_^
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)