
template.mysql.update.updateSomeByPkIgnoreNullEmpty.ftl Maven / Gradle / Ivy
<#-- 修改若干条数据,忽略为空的属性 -->
UPDATE ${tableName!}
<#-- 如果入参的 key 名称 或者 要修改的对象实例为空,则不修改任何一条数据库数据 -->
<#-- 设置所有的值为原值 -->
<#list columns as column>
`${column.column!}`=`${column.column!}`<#if column_has_next>,#if>
#list>
<#-- 设置修改条数为 0 -->
LIMIT 0
<#-- 入参不为空的情况 -->
<#list columns as column>
<#-- 入参要修改的实体类中所有主键属性值均为空的情况(即:无主键),则所有值均设置为原值(即:不修改) -->
`${column.column!}`=`${column.column!}`<#if column_has_next>,#if>
<#-- 入参要修改的实体类中存在有意义值的主键属性 -->
<#-- 如果当前字段(属性)不是主键,且值不为空,则修改其值内容 -->
`${column.column!}`=${"#\{obj."}${column.property}${"}"}<#if column_has_next>,#if>
<#-- 如果当前字段(属性)是主键,则不修改其值内容 -->
`${column.column!}`=`${column.column!}`<#if column_has_next>,#if>
#list>
<#-- 主键值作为修改条件 -->
<#list pkColumns as pkColumn>
AND `${pkColumn.column!}`=${"#\{obj."}${pkColumn.property}${"}"}
#list>
<#-- 入参要修改的实体类中所有主键属性值均为空的情况(即:无主键),则只修改0条数据(即:不修改) -->
LIMIT 0
© 2015 - 2025 Weber Informatics LLC | Privacy Policy