当 NOT NULL DEFAULT遇到 Invalid use of NULL value

当 NOT NULL DEFAULT遇到 Invalid use of NULL value

今天项目的数据库更新时曝出如此错误。检查发现一个类似如下的语句出现错误: 语句:

ALTER TABLE `ATable`
CHANGE COLUMN `Atxt` `Btxt` DECIMAL(18,6) NOT NULL DEFAULT 0;

错误: ERROR 1138 (22004) at line 7: Invalid use of NULL value 原因: NOT NULL DEFAULT 0 ,表示不为空,默认赋值0,但想修改的表单中存在为null的值 解决方案:

UPDATE ATable
SET Btxt= 0
WHERE Btxt IS NULL;

之后再执行所需执行的SQL语句即可。

本文采用 CC BY-NC-SA 4.0 许可,转载请注明出处与作者。

支持一下

如果这篇文章对你有帮助,欢迎打赏或分享。

打赏支持

评论