【问题标题】:DATETIME and TIMESTAMP Length/Values ErrorDATETIME 和 TIMESTAMP 长度/值错误
【发布时间】:2016-07-31 13:06:43
【问题描述】:

我使用int 类型来存储日期时间类型的数据。为了方便从 MySQL 获取特定范围内的数据,我尝试将其更改为 TIMESTAMP/DATETIME,但在这两种情况下它都给出了 the attached image 中的错误。数据类型TIMESTAMP/DATETIME 的格式为YYYY-MM-DD HH:MM:SS,长度为19 个字符。

我无法获得适当的教程/文章来了解有关此错误/问题的知识。

Error Image

【问题讨论】:

  • 不要一直挂在教程上。直接在官方文档中阅读此类内容会更有意义。 dev.mysql.com/doc/refman/5.7/en/…
  • 那么限制 6 表示它是小数值?我想如果用YYYY-MM-DD HH:MM:SS 输入数据库,我会得到结果。感谢您指出有关此数据类型的关键点,尽管我已经阅读了 dev.mysql.com 中的文章。

标签: mysql datetime phpmyadmin


【解决方案1】:

定义 DATETIME 或 TIMESTAMP 字段时,无需指定长度。

这是错误消息所指的内容:

DATETIME 或 TIMESTAMP 值可以包含一个尾随小数秒部分,精度最高可达微秒(6 位)

MySQL 允许 TIME、DATETIME 和 TIMESTAMP 值的小数秒,精度高达微秒(6 位)。要定义包含小数秒部分的列,请使用语法 type_name(fsp),其中 type_name 是 TIME、DATETIME 或 TIMESTAMP,fsp 是小数秒精度。例如:

CREATE TABLE t1 (t TIME(3), dt DATETIME(6));

摘自CREATE TABLE Syntax

| TIME[(fsp)]
| TIMESTAMP[(fsp)]
| DATETIME[(fsp)]

文档:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-02
    • 1970-01-01
    • 2016-10-30
    • 2011-05-09
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    相关资源
    最近更新 更多