求助帖!为什么executeUpdate(sql)受影响的行数为0,但是返回的还是1?

今天做一个demo需要用到这么一个思路:

if (res==1) {
writer.write(“修改成功!”);
writer.flush();
}else {
writer.write(“相同的不用修改!”);//res=0表示值一样不用修改
writer.flush();
}
但是无论值一不一样executeUpdate(sql)总是返回 1;源码如下:

 String sql = "UPDATE `member` SET member.username="+"'"+user.getUsername()+"'"+",surename="+"'"+user.getSurename()+"'"+",year="+"'"+user.getYear()+"'"+",sex="+"'"+user.getSex()+"'"+",password="+"'"+user.getPassword()+"'"+"WHERE member.phone="+user.getPhone();
		 System.out.println(sql);
		 	int res=dao.executeUpdate(sql);
		 	System.out.println(res);
		 		 if (res==1) {
		 			 writer.write("修改成功!");
					 writer.flush();
		 			 }else {
		 			 writer.write("相同的不用修改!");
		 			 writer.flush();
					}

把sql语句复制到Navicat里面执行出来受影响行数确实是0:
在这里插入图片描述
executeUpdate(sql)不是返回的影响行数吗?应该是啊……哪位大佬帮忙看看是哪里出问题了………………

发布了2 篇原创文章 · 获赞 2 · 访问量 2104

猜你喜欢

转载自blog.csdn.net/weixin_43655425/article/details/104528302