我希望更新我的数据库(已包含数据),并向表中添加一列
这个新列是一个日期,我不希望它为null也没有默认值。
由于我已经在数据库中有数据,mysql将不允许我插入非空数据,所以我正在尝试插入一个null null,插入我的所有数据,然后将其设置为not null像这样
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'但我检查,并且重新检查,没有任何值的价值
那么如何在不将其设置为默认值的情况下将该列设置为null?
谢谢。
答案 0 :(得分:0)
所以,如果我不修改位置(在id之后),由于某种原因,它会起作用!
ALTER TABLE `Test`.`rct`
MODIFY `dte` DATE NOT NULL;
不知道为什么......但是当我做一个描述时,我得到了我想要的东西。