我遇到了一个小问题,我需要生成一个报告,专注于数据库中某些字段的更改。我想做的就是这样的事情
“如果已更新,请在单独的字段中插入今天的日期”
这样,当我生成报告时,我可以通过检查日期来验证哪些条目已被修改。
问题是,我不确定如何使用php / codeigniter
执行此操作感谢您的提示!
答案 0 :(得分:3)
您可以在表结构中添加时间戳字段
your_field timestamp default current_timestamp on update current_timestamp
请查看手册中的可用语法
http://dev.mysql.com/doc/refman/5.0/en/timestamp.html
修改。 如果只有在特定字段更改时才需要更新时间,则需要触发器。
create table test (
id int not null auto_increment primary key,
field1 int,
field2 int,
field3 int,
last_update datetime)
engine = myisam;
delimiter //
drop trigger if exists update_time //
create trigger update_time before update on test
for each row begin
if new.field2 <> old.field2 or new.field3 <> old.field3 then
set new.last_update = now();
end if;
end //
delimiter ;
在我的示例中,只有当field2或field3发生更改时,last_update字段才会更新当前时间。