All Downloads are FREE. Search and download functionalities are using the official Maven repository.

template.mysql.update.updateOneByPkIgnoreNullEmpty.ftl Maven / Gradle / Ivy

There is a newer version: 0.0.5
Show newest version
<#-- 修改一条数据,忽略为空的属性 -->

UPDATE ${tableName!}


	<#-- 如果入参的 key 名称 或者 要修改的对象实例为空,则不修改任何一条数据库数据 -->
	
		
			<#-- 设置所有的值为原值 -->
			<#list columns as column>
				`${column.column!}`=`${column.column!}`<#if column_has_next>,
			
		
		<#-- 设置修改条数为 0 -->
		LIMIT 0
	
	<#-- 入参不为空的情况 -->
	
		
			<#list columns as column>
				
					<#-- 入参要修改的实体类中所有主键属性值均为空的情况(即:无主键),则所有值均设置为原值(即:不修改) -->
					
						`${column.column!}`=`${column.column!}`<#if column_has_next>,
					
					<#-- 入参要修改的实体类中存在有意义值的主键属性 -->
					
						
							<#-- 如果当前字段(属性)不是主键,且值不为空,则修改其值内容 -->
						    
						    	`${column.column!}`=${"#\{obj."}${column.property}${"}"}<#if column_has_next>,
						    
							<#-- 如果当前字段(属性)是主键,则不修改其值内容 -->
						    
						    	`${column.column!}`=`${column.column!}`<#if column_has_next>,
						    
						
					
				
			
		
		
			<#-- 主键值作为修改条件 -->
			<#list pkColumns as pkColumn>
				
					AND `${pkColumn.column!}`=${"#\{obj."}${pkColumn.property}${"}"}
				
			
		
		<#-- 入参要修改的实体类中所有主键属性值均为空的情况(即:无主键),则只修改0条数据(即:不修改) -->
		
			LIMIT 0
		
	






© 2015 - 2025 Weber Informatics LLC | Privacy Policy