Mybatis执行update,insert等语句返回的不是受影响的行数

在我们日常开发中,使用Mybatis框架中,经常会根据update,或者其他操作的返回值判断执行是否成功。

如:

在执行以上语句时候,需要根据result返回值是否 =1 来判断是否update成功。

同样的语句在navicat执行后,若是update没有影响行数,则返回0;

而Mybatis不会返回这个,它返回的是匹配行数,所以怎么返回都是1。

于是,需要在jdbc连接中加一句话:useAffectedRows=true

然后就可以利用返回影响行数来判断是否update成功啦!

JDBC连接其他常用参数参考:

其他常见常用参数:
UsePerformanceMonitor,userperfmon, perfmon:是否启用性能监视,默认 false
IgnorePrepare:    是否忽略 Prepare() 调用,默认 true
UseProcedureBodies,procedure bodies:是否检查存储过程体、参数的有效性,默认 true
AutoEnlist:    是否自动使用活动的连接,默认 true
TreatTinyAsBoolean:是否将 TINYINT(1) 列视为布尔型,默认 true
AllowUserVariables:是否允许 SQL 中出现用户变量,默认 false
FunctionsReturnString:所有服务器函数是否按返回字符串处理,默认 false
UseAffectedRows:是否用受影响的行数替代查找到的行数来返回数据,默认 false
Keepalive:    保持 TCP 连接的秒数,默认0,不保持。
ConnectionLifeTime:连接被销毁前在连接池中保持的最少时间(秒)。默认 0
Pooling:    是否使用线程池,默认 true
MinimumPoolSize, min pool size:线程池中允许的最少线程数,默认 0
MaximumPoolSize,max pool size:线程池中允许的最多线程数,默认 100
ConnectionReset:连接过期后是否自动复位,默认 false
CharacterSet, charset:向服务器请求连接所使用的字符集,默认:无
其他常见常用参数:
UsePerformanceMonitor,userperfmon, perfmon:是否启用性能监视,默认 false
IgnorePrepare:    是否忽略 Prepare() 调用,默认 true
UseProcedureBodies,procedure bodies:是否检查存储过程体、参数的有效性,默认 true
AutoEnlist:    是否自动使用活动的连接,默认 true
TreatTinyAsBoolean:是否将 TINYINT(1) 列视为布尔型,默认 true
AllowUserVariables:是否允许 SQL 中出现用户变量,默认 false
FunctionsReturnString:所有服务器函数是否按返回字符串处理,默认 false
UseAffectedRows:是否用受影响的行数替代查找到的行数来返回数据,默认 false
Keepalive:    保持 TCP 连接的秒数,默认0,不保持。
ConnectionLifeTime:连接被销毁前在连接池中保持的最少时间(秒)。默认 0
Pooling:    是否使用线程池,默认 true
MinimumPoolSize, min pool size:线程池中允许的最少线程数,默认 0
MaximumPoolSize,max pool size:线程池中允许的最多线程数,默认 100
ConnectionReset:连接过期后是否自动复位,默认 false
CharacterSet, charset:向服务器请求连接所使用的字符集,默认:无

Mybatis执行update,insert等语句返回的不是受影响的行数相关推荐

  1. MyBatis的update返回值改为受影响的行数

    MyBatis的update返回值改为受影响的行数 一.背景: 项目中经常通过update的SQL语句进行更新数据,而在目前的框架中,mybatis是主流的框架,所以理解update的真实的返回值也显 ...

  2. 【转载】mybaits的update、Insert、delete返回的是不是受影响的行数?

    转自:https://blog.csdn.net/benben683280/article/details/79645697 update操作 返回值 mybatis执行update()方法默认返回为 ...

  3. SQL Server返回插入数据的ID和受影响的行数

    首先看看数据库里面的数据(S_Id为自增长标识列): sql server 中返回上一次插入数据的ID(标识值)有三种方式: 第一种 @@IDENTITY: 1 insert into Student ...

  4. SQL返回受影响的行数

    最近做了一个功能需要知道对数据库做增删改操作是否成功,理我想那么我只要获取对数据库做操作后获取受影响的行数即可,因为如果成功的话,会返回受影响的行数. 可是怎么获取? (1)使用hibernateTe ...

  5. SQL存储过程返回受影响的行数

    在很多时候,使用存储过程,不需要返回数据集, 但是经常想知道存储过程是否对数据库有影响: 这些,只需要将下列数据放在你需要统计的语句后面即可: select @@ROWCOUNT

  6. Mybatis Update操作 返回值修改为受影响条数

    到底 update 返回值代表什么呢?我们来验证一下便知道了,假设有如下一张表以及两条数据: 我们来编写一个简单的单元测试用例来验证下,首先使用 mybatis 简单的写个 mapper 进行更新操作 ...

  7. mybatis 的 update 操作明确的返回受影响的记录条数

    通过对 JDBC URL 显式的指定 useAffectedRows 选项,我们将可以得到受影响的记录的条数 对我们的数据库连接配置稍做修改,添加 useAffectedRows 字段: 此时,myb ...

  8. oracle中执行某sql语句后,如一系列delete、update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难?

    oracle中执行某sql语句后,如一系列delete.update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难? 使 ...

  9. mysql 存储过程(提供查询语句并返回查询执行影响的行数)

    DELIMITER $$ DROP PROCEDURE IF EXISTS `p_get_select_row_number`$$ CREATEPROCEDURE `test_cases`.`p_ge ...

最新文章

  1. OCS 2007 聊天记录查看工具 OCSMessage
  2. QuickBI助你成为分析师-邮件定时推送
  3. 买iPhone 11的要不再等等?iPhone 12首曝:全系5G,回归经典造型
  4. SharePoint 2013 文档库中PPT转换PDF
  5. 面试感悟----一名3年工作经验的程序员应该具备的技能--读后感
  6. 教你用Appium搭建Android自动化测试框架(详细教程)
  7. 自己动手写一个分库分表中间件(一)
  8. 2020-12-28
  9. Ruby on Rails 教程
  10. Centos 7系统常用指令
  11. 一个很好用的gif动态图控件:GifImageView
  12. 链表操作eeeeeeeeee
  13. AppTransition
  14. 如何写计算机类专业个人陈述,计算机专业个人陈述十六
  15. python——求交通肇事者的车牌号
  16. 不捡肥皂捡贝壳----00
  17. C语言printf函数格式字符
  18. git版本管理流程图
  19. 八年测试,谈谈这么多年来对软件测试的一些感想与职业规划
  20. 真实评测 OPPO Watch Free智能手表怎么样

热门文章

  1. 压力测试常见性能指标
  2. 文件太大无法复制到U盘的解决方法教程
  3. 车险保单在线OCR识别,字段很全,可以可以
  4. TP4333移动电源芯片
  5. DaisyDisk for Mac 4.6.1 中文破解版下载 查找删除无用的文件
  6. 《kafka中文手册》- 构架设计
  7. PHP中如何给当前日期或指定日期加一年,加上一个月,加一周,加一天,一分一秒
  8. mysql 增加或减去 一段时间
  9. Php开源h5相册系统,HTML5 CSS3专题 纯CSS打造相册效果的示例代码详解
  10. su组件在什么窗口_建筑留学学生所会的SU软件技巧