MySQL:如何更改上次UPDATE

use*_*204 5 php mysql

我正在使用MySQL和PHP开发数据库应用程序.此时我正试图获取上次UPDATE引起的更改.我解决问题的第一种方法是

  • 用SELECT获得'旧'状态
  • 使用UPDATE进行更改
  • 用SELECT获得'新'状态
  • 比较数组与PHP

这是三个mysql连接......

有没有办法缩短这个?

rcp*_*yan 1

让我告诉你我是如何做到的

当我更新一行时,首先我得到要更新的行,然后将它们称为active records. 然后我将每一列active records与表单字段进行比较。这就是我知道哪一列已更改的方式。

如果您想存储更改的列,请创建history类似的表;

id        (for primary key)
tablename (which table i'm updating)
recordid  (which row i'm updating)
column    (which columns has been changed)
oldvalue  (active record value)
newvalue  (form value-updated value)
date      (obvious)
user      (who did this change)
Run Code Online (Sandbox Code Playgroud)

之后,您可以发挥您的想象力来构建您想要使用的结构。