【问题标题】:MariaDB native UTC time on updateMariaDB 本地 UTC 时间更新
【发布时间】:2021-01-23 23:10:27
【问题描述】:

我正在搜索一个值,该值可在更新行时将列的值更改为当前 UTC 时间,但 UTC_TIMESTAMP 和 GETUTCDATE 仅用作默认值,而不是在 ON UPDATE 中使用时。

是否有解决方案,或者我必须通过应用程序手动为数据库提供 UTC 时间。

附: CURRENT_TIMESTAMP 有效,但不提供 UTC 时间。

【问题讨论】:

    标签: sql mariadb utc onupdate


    【解决方案1】:

    您可以设置默认值以在更新时自动递增:

    此列仅在插入时更新:

    inserted_at DATETIME DEFAULT CURRENT_TIMESTAMP
    

    此列在插入或更新时更新:

    updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
    

    Here 是一个 dbfiddle。

    注意:如果您愿意,这些可以与 timestampdatetime 一起使用。

    【讨论】:

    • current_timestamp 确实有效,但这并没有给出 UTC 时间,这就是我仍在搜索的原因。
    • @NoahSnoeks 。 . .该值在内部存储为 UTC。您可以在需要时使用 convert_tz()back 转换为 UTC。 “可见”时间戳只是为了方便。
    猜你喜欢
    • 2013-08-26
    • 2022-11-23
    • 2011-08-13
    • 2015-07-26
    • 2018-07-02
    • 2018-08-10
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多