首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要:如果update不更改表中的值,也可以在UPDATE上使用mysql当前时间戳

问需要:如果update不更改表中的值,也可以在UPDATE上使用mysql当前时间戳
EN

Stack Overflow用户
提问于 2012-12-04 19:16:26
回答 2查看 1.3K关注 0票数 3

我有一个包含3列的数据库:

身份证/价格/ last_updated

列"last_updated“有..。

  • 作为类型的:时间戳
  • 作为标准:CURRENT_TIMESTAMP
  • 作为属性:更新时的当前时间戳
  • 作为额外的:更新时的当前时间戳

当我运行mysql_query(更新.)为了改变价格,有些价格不会改变。但是,在这些情况下,last_updated值与以前相同(在本例中为: 0000-00- 00 :00:00 :00,因为记录没有被更改)。

因此,我想,只有当新值与当前值不同时,才更新“更新”。

如何才能将当前时间戳放入表中,即使在执行mysql_query(UPDATE.)之后没有更改该值?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-04 19:24:29

在查询中,只需始终使用last_updated更新NOW()字段即可。如下所示:

代码语言:javascript
复制
UPDATE table SET price = ?, last_updated = NOW() WHERE id = ??
票数 4
EN

Stack Overflow用户

发布于 2012-12-04 19:18:33

TRy这个:

代码语言:javascript
复制
ALTER TABLE myTable 
MODIFY last_updated TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

有一次,在现有的表上修复:

代码语言:javascript
复制
update myTable set last_updated=now() where last_updated='0000-00-00 00:00:00'
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13710276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档