gpt4 book ai didi

Mysql 修改表日期不为空

转载 作者:行者123 更新时间:2023-11-30 00:41:35 26 4
gpt4 key购买 nike

我希望更新我的数据库(其中已有数据),并向表中添加一列

这个新列是一个日期,我不希望它为空,也不希望它具有默认值。

由于我数据库中已经有数据,mysql不允许我插入非空数据,所以我尝试的是插入可能为空的列,插入我的所有数据,然后将其设置为非空像这样

ALTER TABLE `Test`.`rct` 
ADD COLUMN `dte` DATE NULL AFTER `id`;

--Insert logic here, and now every single rows has a value

ALTER TABLE `Test`.`rct`
MODIFY `dte` DATE NOT NULL AFTER `id`;

但是当我这样做时,我收到以下错误:日期值不正确:列为“0000-00-00”

但是我检查并重新检查,没有任何地方有 0000-00-00 值

那么如何将该列设置为 null 而不将其设置为默认值?

谢谢。

最佳答案

所以,如果当我不修改位置(id之后)时,由于某种原因,它会起作用!

ALTER TABLE `Test`.`rct` 
MODIFY `dte` DATE NOT NULL;

不知道为什么......但是当我进行描述时,我得到了我想要的。

关于Mysql 修改表日期不为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21734559/

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