有人知道MySQL DATETIME使用的YYYY-MM-DD HH:MM:SS
日期格式的正式名称吗?有吗?它看起来关闭到ISO 8601,但如果你试图互换地使用这两个应用程序,它就足以打破大多数应用程序。
有时我发现自己需要在对话中引用这种特定格式,但将其称为“DATETIME格式”总是会从那些没有做过多次数据库工作的人那里得到空白。我习惯于具有正式名称和非常正式定义的日期格式。 (RFC 2822,有人吗?)那么,是否存在?
答案 0 :(得分:2)
MySQL的Date and Time Literals在参考手册中有所描述。 AFAICS,既没有ISO也没有提到任何其他名称。
Wikipedia, ISO 8601显示ISO组合的日期和时间格式,即“2012-12-04T20:03”(“YYYY-MM-DDTHH:MM”),与提到的MySQL日期时间格式不同。
所以,虽然看起来大致像ISO日期时间,但我只称它为MySQL或SQL格式。
答案 1 :(得分:0)
Olaf Dietsche 的答案是正确的,但过时(2012 年)并且截至 2021 年略有不准确。根据Wikipedia ISO 8601:
<块引用>从 ISO 8601-1:2019 开始,基本格式为 T[hh][mm][ss] 和 扩展格式为 T[hh]:[mm]:[ss]。 早期版本省略了 T (代表时间)两种格式。
也来自同一个链接:
<块引用>ISO 8601-1:2019 允许在扩展格式中省略 T,如 在“13:47:30”中,但只允许在基本格式中省略 T 当日期表达式没有歧义的风险时。
MySQL 在他们的文档中提到了“ISO”(没有编号),在 one link 中他们确实提到了 ISO format refers to ISO 9075, not ISO 8601.
。
ISO 9075 基本上是 MySQL 标准。
MySQL 日期时间格式匹配与 ISO-8601 / RFC-3339 相同的格式,尽管 MySQL 有自己的标准 ISO 9075。因此对于 MySQL 日期时间格式,我们可以将其称为 ISO 8601 、 RFC 3339 或 MySQL 格式 (ISO 9075)。
顺便说一句,ISO 8601 和 RFC 3339 几乎是一样的(从开发人员的角度来看)。如果您有兴趣,read。