sql语句 update字段null不能用is null update字段为 null 值时, 要用 1 set column = null, 而不是 1 set column is null ?UPDATE tableA set 字段a is null WHERE字段b = 条件; 例: 1 2 mysql UPDATE t SET col3 is null WHER
sql语句 update字段null不能用is nullupdate字段为 null 值时, 要用
而不是
? UPDATE tableA set 字段a is null WHERE字段b = 条件; 例:
〇 UPDATE tableA set 字段a = null WHERE字段b = 条件; 例:
update更新数据时null字段是否更新进数据库总结情况一:不需要更新进数据库方法1:直接用sql语句方式,需要更新哪个字段就set xxclounm 即可 方法2:使用mybatis带的方法 updateById(Entry entry),传入entry对象只设置需要更新字段即可。 解析:mybatis-plus在update时对null字段有三种处理策略分别是:
默认策略是忽略null字段,所以只需要将entry中不需要更新的字段不做处理即可。注意:如果entry中字段设置为空字符串" " 则会更新进数据库 方法3:使用updateWapper,其实和方法2原理一样 如下例子只更新age字段 ,同样受更新策略影响:
情况二:需要更新进数据库 (推荐方法3)方法1:直接用sql语句方式,需要更新哪个字段就set xxclounm 即可 方法2:使用mybatis带的方法 updateById(Entry entry),传入entry对象只设置需要更新字段即可。另外在entry类中需要更新null的字段上加上注解updateStrategy 如下面例子:
或者设置全局更新策略(按需要设置单个字段或者全局)
方法3:使用updateWapper,不受更新策略影响。推荐此方法,设置完策略后别人在不知情情况下可能会在不想设置null时将你设置的字段更新为空
|
2021-06-02
2021-06-05
2022-06-27
2022-10-12
2019-09-11