gpt4 book ai didi

mysql - 时间戳与 mysql 中的日期时间相同吗?

转载 作者:行者123 更新时间:2023-11-30 21:54:55 25 4
gpt4 key购买 nike

我有一个存储时间戳的 mysql 数据库,但是当我在 phpmyadmin 中看到它时,它显示为日期时间,我想知道为什么。

我不认为日期时间与时间戳相同,但是...它会因此导致更大的存储需求吗?

最佳答案

DATETIMETIMESTAMP 不是相同的数据类型,尽管它们都用于存储日期和时间信息 (1) .

[The] range for DATETIME values is '1000-01-01 00:00:00.000000' to '9999-12-31 23:59:59.999999', and the range for TIMESTAMP values is '1970-01-01 00:00:01.000000' to '2038-01-19 03:14:07.999999'.

MySQL converts TIMESTAMP values from the current time zone to UTC for storage, and back from UTC to the current time zone for retrieval.

但请注意,使用 TIMESTAMP 可能会导致意想不到的结果,因为

If you store a TIMESTAMP value, and then change the time zone and retrieve the value, the retrieved value is different from the value you stored. This occurs because the same time zone was not used for conversion in both directions.

从 MySQL 5.6.4 开始,TIMESTAMP 需要 4 字节 + 小数秒存储,DATETIME 需要 5 字节 + 小数秒存储空间 (2) .

您应该使用 TIMESTAMP 来存储与时区相关的时间信息(这是一般情况) - 例如商务事件。如果您想存储与时区无关的日期 - 例如生日 - 您可以使用 DATETIME

有关详细信息,请参阅 MySQL Spec .

关于mysql - 时间戳与 mysql 中的日期时间相同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45603572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com