修改记录时更新mysql时间戳

时间:2010-09-09 06:49:46

标签: php mysql phpmyadmin

我刚才提出了一个问题,但我仍有问题。我有一个mysql5数据库,其中包含一个销售表,其中包含表示销售的时间戳。如果销售表中的某个字段修改或更改了当前时间(更改时间)的时间戳更新。为了防止这种情况,我取消选择on_update_select_current_timestamp选项,但时间戳仍然改变了吗?

以下是该字段在phpmyadmin中的显示方式

alt text

有没有人知道我应该做什么,取消选中CURRENT_TIMESTAMP选项似乎重置了on_update_select_current_timestamp触发器

2 个答案:

答案 0 :(得分:0)

如果您不希望自动更新此字段,请不要使用时间戳类型字段 请改用日期时间。

答案 1 :(得分:0)

如果确实禁用了CURRENT-TIMESTAMP选项,请检查表定义。

如果禁用,它应该看起来像......

CREATE TABLE `sometable` (
  ...somefields...
  `Sale_Time` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00' INT(11) DEFAULT NULL,
  ...somefields...
) ENGINE=someengine

...否则CURRENT-TIMESTAMP将在此行中显示。当它被禁用时,它不会在更新时更新,除非某些其他数据库函数(触发器等)在更新字段时对其进行更改。