user表如下:
+----+----------+-----+
| id | name | age |
+----+----------+-----+
| 1 | zhangsan | 20 |
| 2 | lisi | 21 |
+----+----------+-----+
执行操作:update user set name='zhangsan' where id=1;
执行结果:
Query OK, 0 rows affected (0.05 sec)
Rows matched: 1 Changed: 0 Warnings: 0
分析:可以看到返回的影响行数是0,因为id=1的name字段值本来就是'zhangsan',
MySQL在执行更新操作时会先判断要更新字段的值跟原本的值是否相同,如果相同则不执行更新操作;