【发布时间】:2014-01-19 07:12:16
【问题描述】:
假设我有一个包含 16 到 20 个字段的表单,包括输入类型文本和文本区域。
表单使用 POST 方法将字段提交到一个 php 页面,该页面更新一个表 带有 $_POST 变量的数据库。
我的问题是我只想更新数据库中的更改值,而不是更新每个值,
这种优化应用程序的方法有多好? ,我也在另一个网站上阅读了以下答案:
- mySQL 会自动检测到您正在使用它已经包含的相同值更新一个字段,但实际上并没有更新它 场地。不确定这对于其他数据库是否相同 与 php 一起使用。
还有,以上说法的真实性如何?
【问题讨论】:
-
确实如此。如果不需要,mysql 不会浪费时间在磁盘上重写字节。其他数据库是否具有相同类型的优化——您必须查看这些数据库的文档。
-
@MarcB 所以你的意思是我应该依靠 mysql db 优化自身而不是用 PHP 优化我的查询?
-
好吧,考虑一下您必须做的额外工作:获取要在表单中显示的数据,获取提交的表单,再次获取数据,以便您可以将新值与旧值进行比较,然后构建一个仅更新更改值的查询。 2 次选择 + 1 次更新,v.s. 1 次选择 + 1 次更新
-
谢谢,看来是合法的