需要清空内容的列没有更新
最后更新:2023-10-18 21:23:27
|
状态:未完成
默认情况下内容为空的列(“”或null) 不会出现在UPDATE SQL中,
可以通过以下方式强制更新指定列
1.指定更新列
service.update(row,"ID","NM");
2.设置成约定的值NULL(大写)
row.put("NM","NULL");//可以从前台页面输入
3.构造DataRow时指定
row = entityRow("+NM:nm","+CODE:code");
4.指定更新全部列
row.addAllUpdateColumns()
5.统一修改配置文件
<!-- 是否更新NULL列 -->
<property key="IS_UPDATE_NULL_COLUMN">true</property>
<!-- 是否更新空列 -->
<property key="IS_UPDATE_EMPTY_COLUMN">true</property>
其中4、5需要注意如果DataRow中有表中没有的列(如DataRow是从视图中查出来的),会导致SQL异常
这就需要人工将表中没有的列remove后再执行更新
可以通过以下方式强制更新指定列
1.指定更新列
service.update(row,"ID","NM");
2.设置成约定的值NULL(大写)
row.put("NM","NULL");//可以从前台页面输入
3.构造DataRow时指定
row = entityRow("+NM:nm","+CODE:code");
4.指定更新全部列
row.addAllUpdateColumns()
5.统一修改配置文件
<!-- 是否更新NULL列 -->
<property key="IS_UPDATE_NULL_COLUMN">true</property>
<!-- 是否更新空列 -->
<property key="IS_UPDATE_EMPTY_COLUMN">true</property>
其中4、5需要注意如果DataRow中有表中没有的列(如DataRow是从视图中查出来的),会导致SQL异常
这就需要人工将表中没有的列remove后再执行更新