【问题标题】:How do I fix this MYSQL//Phpmyadmin error? [duplicate]如何修复此 MYSQL//Phpmyadmin 错误? [复制]
【发布时间】:2021-12-27 04:07:24
【问题描述】:

所以我尝试对我的表执行一个 ALTER TABLE 命令,以添加一个日期列来存储发布的时间。每当我输入 SQL 代码时,它都会在 PhpMyAdmin 中弹出此错误。我是初学者,如果有人可以帮助我,我真的很想。

原码:

ALTER TABLE posts 
ADD date datetime not null;

弹出的错误: #1292 - 不正确的日期值:“网站”列的“0000-00-00”。 “帖子”。第 1 行的“日期”

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    给一个默认值

    ALTER TABLE posts ADD `date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
    

    或者如果不需要默认值,添加允许NULL的列,使用适当的值更新,然后将列更改为NOT NULL

    ALTER TABLE posts ADD `date` datetime
    ;
    UPDATE posts 
    SET `date` = NOW() -- or any suitable values
    ;
    ALTER TABLE posts CHANGE `date` `date` datetime NOT NULL
    ;
    

    【讨论】:

      【解决方案2】:

      您要添加的列不能是null。那么现有的行有什么价值呢?

      您需要指定一个默认值,或者允许null 直到它以某种方式填充。

      【讨论】:

        猜你喜欢
        • 2015-06-08
        • 2015-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-18
        • 1970-01-01
        • 2020-02-22
        • 2014-03-01
        相关资源
        最近更新 更多