sql update执行返回0,能否判断数据不存在

答案:不能。

update执行返回0的情况

  • 1、没有找到需要更新的数据,就是这条记录不存在

例如:where后面的条件是id=0,那这条记录肯定是不存在的,返回结果是0

  • 2、更新时的数据和要更新的数据完全一致时

例如:更新前的数据name=张三,我们使用update将name还是改为张三,这里返回的结果依然是0

使用第三方持久化框架Mybatis时

update更新时如果没有找到数据返回0,找到数据就不会返回0了,无论数据是否一致,都不会返回0

是因为mybatis这个第三方持久化框架返回来的是被匹配的影响行数,所以执行多次都不会返回0

如果想要以返回的行数作为判断结果,则jdbc连接就要增加useAffectedRows=true这个参数

相关推荐
nanxun8868 小时前
记一次诡异的 Docker 容器"串包"故障排查
java
用户15630681035111 小时前
Day01 | Java 基础(Java SE)
java
行者全栈架构师12 小时前
Maven dependency:tree 的 8 个高级用法
java·后端
行者全栈架构师16 小时前
IDEA 中 Maven 项目的 15 个红色报错快速解决方法
java·后端
令人头秃的代码0_016 小时前
mac(m5)平台编译openjdk
java
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
唐青枫2 天前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
云技纵横2 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
一个做软件开发的牛马2 天前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端
用户3721574261352 天前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积
java