MySQL更新数据先期是否判断数据有没有被修改
程序员文章站
2022-05-10 10:59:06
...
MySQL更新数据之前是否判断数据有没有被修改
MySql{MyPhpAdmin}里执行一条更新语句:
update tableA set a=1 where id=2
如果a原来的值就是1,MySql就直接返回了“影响了0行” 。
如果a原来的值不会1,就会返回“影响了1行”;
难道MySql在执行update语句之前还拿新值和旧值比较,如果有修改才修改之,没有修改的话,也就不执行update语句了吗?
还有PHP里面
执行mysql->query();语句的话,如果语句本身没有错误,就直接返回true。我执行update ,如果语法正确,条件错误,query直接返回true。
如果用mysql->affected_rows 判断的话,就会出现上面mysql里面讲的问题:语句正确,条件正确,就是没有修改数据,返回0行。这样我如何知道我的update语句真正的执行成功,影响到具体的数据。
------解决方案--------------------
看着就纠结。。
必须要知道语句是否正确,这条数据是否存在,update之后是否被修改。
我觉得要先select一下才能满足你的所有需求。
------解决方案--------------------
这样我如何知道我的update语句真正的执行成功,
-- 返回true就表示成功了
影响到具体的数据。
mysql->affected_rows
MySql{MyPhpAdmin}里执行一条更新语句:
update tableA set a=1 where id=2
如果a原来的值就是1,MySql就直接返回了“影响了0行” 。
如果a原来的值不会1,就会返回“影响了1行”;
难道MySql在执行update语句之前还拿新值和旧值比较,如果有修改才修改之,没有修改的话,也就不执行update语句了吗?
还有PHP里面
执行mysql->query();语句的话,如果语句本身没有错误,就直接返回true。我执行update ,如果语法正确,条件错误,query直接返回true。
如果用mysql->affected_rows 判断的话,就会出现上面mysql里面讲的问题:语句正确,条件正确,就是没有修改数据,返回0行。这样我如何知道我的update语句真正的执行成功,影响到具体的数据。
------解决方案--------------------
看着就纠结。。
必须要知道语句是否正确,这条数据是否存在,update之后是否被修改。
我觉得要先select一下才能满足你的所有需求。
------解决方案--------------------
这样我如何知道我的update语句真正的执行成功,
-- 返回true就表示成功了
影响到具体的数据。
mysql->affected_rows
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
推荐阅读
-
如何快捷有效的判断某条MySQL数据被修改的内容。
-
判断数据库表是否存在以及修改表名_MySQL
-
判断字段是否被更新 新旧数据写入Audit Log表中
-
判断数据库表是否存在以及修改表名_MySQL
-
判断字段是否被更新 新旧数据写入Audit Log表中
-
javascript - 来个问题:在编辑页面中,我把数据库中原有的内容填充到页面上,然后用户会修改并且提交给我,我要怎么判断这些数据是否被改动过?
-
MySQL更新数据先期是否判断数据有没有被修改
-
javascript - 来个问题:在编辑页面中,我把数据库中原有的内容填充到页面上,然后用户会修改并且提交给我,我要怎么判断这些数据是否被改动过?
-
MySQL更新数据先期是否判断数据有没有被修改
-
MySQL更新数据头里是否判断数据有没有被修改
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论