色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql顯示影響行數 值沒有變

錢浩然2年前9瀏覽0評論

在mysql中,當我們執行一條SQL語句時,如果是修改或刪除操作,除了返回執行結果外,還會返回影響的行數。但有時候我們發現語句執行成功了,但是返回的影響行數卻是0,這是為什么呢?

其實,這種情況很可能是因為記錄的值沒有發生變化。比如,我們執行如下語句:

UPDATE `user` SET `name`='tom' WHERE `id`=1;

如果表中id為1的記錄的name值本來就是'tom',那么執行之后并沒有發生任何變化,因此影響行數就是0。

解決這個問題的方法很簡單,我們只需要在執行SQL語句之前,先查詢一下原始記錄的值,然后判斷是否需要執行更新操作即可。具體代碼如下:

SELECT `name` FROM `user` WHERE `id`=1;

查詢出來的結果是原始記錄的name值,如果發現需要更新則執行UPDATE語句即可,否則直接返回。

通過這種方式,我們就可以避免因為記錄的值沒有變化而產生的誤解了。