表t_test中已存在id = 97并且num = 2的记录重复执行以下SQL:UPDATE t_test SET num = 2 WHERE id = 97;select ROW_COUNT();在navicat for mysql或者mysql workbench中,ROW_COUNT()=0,但是在java程序(dbutils框架)中总是返回1,有没有大神解释一下?
1 回答
手掌心
TA贡献1942条经验 获得超3个赞
正常的代码就是返回0
,因为这个值的意义在于受影响的行数,由于这个地方原值已经为2,所以受影响的行数结果为0无误。
对此框架不了解,我推测原因如下:
因为框架中考虑到此处结果一般作为判断操作成功与否的标志,如果一直返回0,则会进入错误逻辑中,故此大部分框架都会重新修改这个值。
添加回答
举报
0/150
提交
取消