【发布时间】:2011-09-21 06:00:36
【问题描述】:
我正在为正在编辑现有记录的用户处理一个包含大量字段的表单。用户可能只更改了一个字段,我通常会执行更新查询来设置所有字段的值,即使它们中的大多数都不会更改。我可以进行某种跟踪以查看哪些字段实际发生了变化,并且只更新其中的几个。更新记录中的所有字段与仅更新更改的字段之间是否存在性能差异?还有其他理由选择这两种方法吗?霰弹枪法很简单……
【问题讨论】:
-
我对特定性能的答案很感兴趣。但是,我认为您自己也说过 - 霰弹枪法很简单。也就是说,IMO,无论单个字段更新可能提供何种优化,是否值得跟踪的开销。性能是一种平衡。
-
MySQL 会检测一个字段是否没有改变并且不会对其做任何额外的工作,所以开销并没有你想象的那么糟糕。
标签: mysql performance field