场景:mysql 给表新增parent_id列,并设置为not null,保存时报错Invalid use of NULL value。
报错原因:因为已存在的数据的parent_id列为null,与not null的设置冲突。
解决办法:新增parent_id列后,先update已存在数据的parent_id为默认值,例如-1。然后修改该列的not null属性,保存成功。
本文介绍了解决MySQL中向已有表添加带有NOT NULL约束的新列时遇到的问题。当尝试直接添加非空列时,如果表中已有数据,则会因NULL值冲突而报错。文章提供了一个有效的解决步骤:首先添加新列并允许NULL值,接着更新所有记录以填充默认值,最后将该列设为非空。
场景:mysql 给表新增parent_id列,并设置为not null,保存时报错Invalid use of NULL value。
报错原因:因为已存在的数据的parent_id列为null,与not null的设置冲突。
解决办法:新增parent_id列后,先update已存在数据的parent_id为默认值,例如-1。然后修改该列的not null属性,保存成功。
357
1116

被折叠的 条评论
为什么被折叠?