当使用带有bean的null值属性的populate调用时,我遇到了SQLUpdateClause的问题.它只是从生成的更新SQL中跳过空值属性,而不是将相应的字段设置为NULL.
例:
public class Bean {
private Long id;
private String value;
private String value2;
...
}
Bean bean = ...
bean.setValue(null);
bean.setValue("value2");
SQLUpdateClause update = new SQLUpdateClause(connection, dialect, qBean);
update.populate(bean).where(qBean.id.eq(...)).execute();
Run Code Online (Sandbox Code Playgroud)
会产生SQL:
update bean set value2 = 'value2' where bean.id = ...
Run Code Online (Sandbox Code Playgroud)
而不是期望:
update bean set value = null, value2 = 'value2' where bean.id = ...
Run Code Online (Sandbox Code Playgroud)
这里有什么帮助?... 请