在mysql中更新表时,例如:
表
user
user_id | user_name
1 John
2 Joseph
3 Juan
如果我运行查询
UPDATE `user` SET user_name = 'John' WHERE user_id = 1
MYSQL会再次写入相同的值还是忽略它,因为它是相同的内容?
这是我提出的一个Q& A问题,Stack Overflow encourages它,我认为对将来有同样问题的程序员来说会有所帮助。
答案 0 :(得分:21)
正如MYSQL Manual for the UPDATE statement所暗示的那样,
如果将列设置为当前的值,MySQL会注意到这一点 并且不会更新它。
因此,如果您运行此查询,MYSQL将理解您尝试应用的值与指定列的当前值相同,并且它不会向数据库写入任何内容。