mysql - sql中的数据库时间戳

标签 mysql sql database

在 MySQL 中创建数据库表。我创建了两个字段来获取时间戳。

created_at          timestamp default '0000-00-00 00:00:00',
updated_at          timestamp default now() on update now(),

当我更新数据库时,两个字段都更新为当前时间戳。关于如何防止这种情况发生的任何想法?我在更新时没有提供“created_at”字段——我还为 updated_at 字段提供了“null”以自动更新。

最佳答案

根据 MySQL 的版本,您应该能够在 updated_at 字段上使用以下默认值:

更新 CURRENT_TIMESTAMP 时的 CURRENT_TIMESTAMP

您的 created_at 字段应该将 CURRENT_TIMESTAMP 作为默认值。

我还将两者都设置为数据类型日期时间而不是时间戳。

关于mysql - sql中的数据库时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36852195/

相关文章:

sql - 有什么不同

c# - 在执行数据库搜索时使用 OrderBy 查询对不带第一个字符的数字进行排序

php - 我的子查询将执行时间增加 20 秒。我怎样才能加快速度?

php - USE | 之间有什么区别? select_db 函数或 TABLE NAME.dbo?

php - mysql中的'IN'子句使执行速度变慢,还有其他选择吗?

php - 获取 mysql 结果,然后随机化结果顺序,然后显示一个与其他结果不同的结果

mysql - 记录从 phpmyadmin 发出的所有查询

PHP Mysql自动报价?

mysql - MySQL 更新查询中出现 'field list' 错误中的未知列

mysql - 以不同方式对三列进行索引