
com.gitee.qdbp.jdbc.plugins.UpdateSqlBuilder Maven / Gradle / Ivy
package com.gitee.qdbp.jdbc.plugins;
import com.gitee.qdbp.able.jdbc.base.UpdateCondition;
import com.gitee.qdbp.jdbc.api.SqlBoot;
import com.gitee.qdbp.jdbc.exception.UnsupportedFieldException;
import com.gitee.qdbp.jdbc.model.ValidStrategy;
import com.gitee.qdbp.jdbc.sql.SqlBuffer;
/**
* Update SQL Builder
*
* @author zhaohuihua
* @version 190601
*/
public interface UpdateSqlBuilder {
/**
* 获取支持的条件类型
*
* @return 条件类型
*/
Class supported();
/**
* 生成OrderBy SQL语句
*
* @param condition 条件
* @param columnResolver 列名转换处理类
* 如果能取到QueryFragmentHelper就用new ColumnNameHelper(queryFragmentHelper)
* 如果取不到, 就用new ColumnNamingConverter(sqlBoot.plugins());
* @param validStrategy 校验处理策略
* 注意: 由于@Column的length/precision/scale有默认值, 一旦启用, 则所有字段都需要覆盖设置!
* @param sqlBoot SqlBoot
* @return SQL语句
* @throws UnsupportedFieldException 存在不支持的字段名
*/
SqlBuffer buildSql(T condition, ColumnNameResolver columnResolver, ValidStrategy validStrategy, SqlBoot sqlBoot)
throws UnsupportedFieldException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy