MySQL监视器更改

时间:2012-04-01 02:04:10

标签: mysql sql

如何在表中创建一个列,该列记录同一个表中另一个特定列的某个值的更改时间。我使用的是MySQL 5.0.67版。

预订系统需要此SQL。例如,当预订被插入到预订表中时,确认栏填充有:B,当客户确认预订时,该值被改变为BC。如何记录发生这种变化的时间?

1 个答案:

答案 0 :(得分:1)

一种非常常见的方法是使用“审计”表,这些表是原始表的副本,但具有其他列,例如log_id,log_timestamp,log_user。然后,您将在原始表上创建INSERT / UPDATE / DELETE触发器,这将触发已更改行的副本以及timestamp / db用户信息。

以下是此类实施的一个示例:Using MySQL Triggers to Audit Field Changes from a Database Table