当 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语句即可。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏别先生

mysql的内连接,外连接(左外连接,右外连接)巩固

1:mysql的内连接: 内连接(inner join):显示左表以及右表符合连接条件的记录; 1 select a.goods_id,a.goods_name...

2207
来自专栏运维技术迷

MySQL数据库(五):索引

一.什么是索引 相当于一本数的目录 二.使用索引的好处和坏处 好处:加快查找速度 坏处:占用磁盘空间 三.查看索引命令 命令格式: show inde...

2919
来自专栏MYSQL轻松学

insert事务产生duplicate key error引发的死锁分析

先看程序报错: 2017-06-12 21:18:40.856 [ForkJoinPool.commonPool-worker-12] ERROR com....

8074
来自专栏技术碎碎念

mysql使用基础 sql语句(一)

命令行输入mysql -u root -p,回车再输入密码,进入mysql。 终端命令以分号作为一条语句的结束,可分为多行输入,只需在最后加上分号即可。如下图:...

36310
来自专栏我的博客

MySQL触发器

1、触发器定义就不说了,既然能看到我这个文章就肯定明白这个定义了。用途也不多说,来看继续向下看吧! 触发器语法: CREATE TRIGGER <触发器名称...

2805
来自专栏mwangblog

开始使用MySQL

1792
来自专栏python3

初识mysql语句

mysql> update mysql.user set authentication_string =password('root') where User=...

962
来自专栏乐沙弥的世界

一次mysql 5.5升级到5.6导致的ERROR 1805

前阵子将mysql数据库由5.5.14升级到5.6.36,升级后所有的业务数据都正常。运行了几天后,发现在主库上添加用户失败,错误提示为:ERROR 1805 ...

1072
来自专栏lgp20151222

Mysql 如何设置字段自动获取当前时间,附带添加字段和修改字段的例子

ALTER TABLE `table_name` ADD COLUMN  `CreateTime` datetime NULL DEFAULT CURRENT...

1601
来自专栏互联网杂技

修改数据表之添加主键约束

上一篇是对表中列的操作: 涉及到列的增删改查; ----- 而本篇是设置一个与另一个表的关系,还有列的默认值; ---- 1.一个表创建之后, 需要对这个表中的...

32911

扫码关注云+社区

领取腾讯云代金券