SQL:使用时间戳更新

时间:2011-09-04 01:17:26

标签: php mysql sql

我有一个名为'updated'的列表。当新行创建时,该列会自动插入当前时间。但是,我想更新该列。有关如何执行此操作的任何输入?这是我的更新声明(还没有'更新'列):

$update = mysql_query("UPDATE documents SET company = '$company',claimnumber = '$claimnumber',fullname = '$fullname',dateofloss = '$dateofloss',foruser = '$foruser' "."WHERE doc_id =".$doc_id);

3 个答案:

答案 0 :(得分:2)

使用trigger,如下所示:

create trigger updated_is_now before update on documents
for each row set NEW.updated = now();

然后,您可以发送通常的SQL UPDATE语句,触发器将有效地将updated = now()添加到SET子句中。

答案 1 :(得分:1)

如果您希望在更新时更新updated列,请在查询中为其指定NOW()

答案 2 :(得分:1)

ALTER TABLE `documents` 
ADD COLUMN `UpdatedDate` TIMESTAMP DEFAULT CURRENT_TIMESTAMP 
ON UPDATE CURRENT_TIMESTAMP NOT NULL;

编辑:改变......

ALTER TABLE `documents` 
MODIFY `updated` TIMESTAMP DEFAULT CURRENT_TIMESTAMP 
ON UPDATE CURRENT_TIMESTAMP NOT NULL;