19:09:09|Apply changes to t_users|No changes detected
没有效果,看来只能用sql语句来 *** 作了。
解决方案:执行sql语句:alter table learn.t_users alter column history set default ''
19:14:21| alter table learn.t_users alter column history set default '' |0 row(s) affected Records: 0 Duplicates: 0 Warnings: 0 0.079 sec
成功!
mysql default值只有在insert语句中没有这个字段时才会生效,如果insert中有插入该字段而该字段取值又为null,null值将被插入到表中,default此时失效。在mybatis开发中通常会直接插入一个表对象,表中所有字段都会插入,因此如果要设置默认值,应该在业务层写逻辑,而不能依赖mysql的default来设置默认值。
注:可以使用mybatis的动态sql解决该bug
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)