0
我遇到了一個小問題,我需要生成一個報告,重點關注數據庫中某些字段的更改。我想通做的,是這樣的更新字段上的PHP/MYSQL動作
「如果有更新,插入今天的獨立領域日期」
這樣一來,當我生成的報告,我可以確認哪些條目已通過檢查修改日期。
問題是,我不知道該如何使用PHP /笨做到這一點
感謝您的提示!
我遇到了一個小問題,我需要生成一個報告,重點關注數據庫中某些字段的更改。我想通做的,是這樣的更新字段上的PHP/MYSQL動作
「如果有更新,插入今天的獨立領域日期」
這樣一來,當我生成的報告,我可以確認哪些條目已通過檢查修改日期。
問題是,我不知道該如何使用PHP /笨做到這一點
感謝您的提示!
你可以一個時間戳字段添加到您的表結構
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 ;
在我的示例中last_update字段只會在field2或field3發生變化時更新爲當前時間。
所以我如果正確理解你的代碼,PHP會知道new.field2和old.field2是什麼,並比較兩者,如果不相等,更新時間? – JonYork 2011-06-05 19:22:43
Php甚至沒有涉及我的答案。這只是一個mysql觸發器,其中old是已存儲的值,new是新的值。如果他們不同的時間字段被更新。 – 2011-06-05 19:28:10
我的表格已經制作好了,我已經有了500個條目。我如何添加分隔符代碼? – JonYork 2011-06-05 20:12:07