数据库是**decimal(15,2)**类型的字段,本来想把字段原本的默认值置空,达到字段非必填的效果,结果意外发现插入这个字段时报错
[HY000][1364] Field ‘predict_total_profit’ doesn’t have a default value
我执行的sql:
alter table iyx_pms.init_quoted_price alter column predict_total_profit drop default;
然后设置可以为null:
alter table iyx_pms.init_tender_filing modify predict_total_profit decimal(15,2) null
查看表结构和script发现没什么问题:
找解决方案:
检查是否是主键或者是其他表的外键,由于我的是一个金额字段,不对口。。
想着那就先给他加一个null进去试试:
果不其然 好了 -_-|| 随后再去表结构和script看下 竟然看不出来有任何改变
至于具体原因,目前还不太清楚 。。小白一个。。 哪位大神发现了原因还望指点
扩展方案:https://www.cnblogs.com/xiaoleiel/p/8324104.html