在MySQL中的布尔列中插入了以前值的null值



我已经在mySQL表中添加了一个新列,如下:

alter table result add column failed boolean default 0;

这可以正常工作,尽管表格中的先前记录在失败字段中获得了无效的值。我不确定如果字段数据类型是布尔值,并且默认设置为0。

,这是可能的。

有人可以帮助

它设置为空,因为您在添加列之前插入了这些行,默认值仅适用于新插入。您可以在结果表中更新失败的所有值为null并将其设置为0以解决问题。

UPDATE result SET failed = 0 WHERE failed = null;

那是如何使用它

ALTER boolColumn SET DEFAULT 0;

您现有数据无法获得默认值的原因是因为您将列添加为NULL。这意味着只有新数据将获得默认值。如果要设置现有数据的默认值,则应使用NOT NULL添加列:

ALTER TABLE result
ADD COLUMN failed BOOLEAN NOT NULL DEFAULT 0;

相关内容

  • 没有找到相关文章

最新更新