JavaJDBC异常记录:关于sql上能够正常执行的sql语句,在java中执行了但是返回结果不一致问题

个人推荐:

📢📢📢 前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下 "通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。点击跳转到教程

在这里插入图片描述

一:问题

今天在写关于JDBC程序时出现了一个异常就是sql语句在mysql中可以正常执行,在java中也能正常执行,但是二者返回结果却不一致。

二:经过

在msyql中执行情况:
在这里插入图片描述
在java中的sql代码【为了解决为什么不一致,这里把sql语句写死了】:
在这里插入图片描述
在这里插入图片描述

但是结果却是:受影响行数却是:0
在这里插入图片描述
异常处理过程:
1:先去掉sql条件部分看看
在这里插入图片描述
结果却是可以执行,说明java中BaseDao里面的代码没有问题
在这里插入图片描述
2:将条件一点一点的加起
在这里插入图片描述
结果也可以执行
在这里插入图片描述
3:问题大致清楚出在那里了,and后面的条件是带中文的【狂猜中文乱码】
中文乱码,那肯定只有一个地方了,mysql的配置文件
在这里插入图片描述
最后发现没有设置编码…
在这里插入图片描述
最后运行通过,终于和mysql中运行的一致了:nice!
在这里插入图片描述

三:解决办法

检测自己项目的数据库配置文件是否设置了编码,编码是否和数据库一致!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嘟嘟的程序员铲屎官

你的鼓励将是我最大的动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值