Class SQLBuilder

java.lang.Object
top.magstar.framework.database.query.SQLBuilder

public class SQLBuilder extends Object
SQL 构建器。

根据数据库方言和查询条件生成 SQL 语句及参数。

Since:
1.0.0
Version:
1.0.0
Author:
Berry_so
  • Constructor Details

    • SQLBuilder

      public SQLBuilder(DatabaseDialect dialect)
      构造 SQL 构建器。
      Parameters:
      dialect - 数据库方言
  • Method Details

    • buildSelect

      public SQLQuery buildSelect(String tableName, List<String> columns, List<Condition> conditions, List<OrderBy> orderBy, Integer limit, Integer offset)
      构建 SELECT 查询 SQL。
      Parameters:
      tableName - 表名
      columns - 查询列,null 或空表示查询所有列
      conditions - WHERE 条件列表
      orderBy - 排序列表
      limit - 数量限制
      offset - 偏移量
      Returns:
      SQL 查询对象
    • buildInsert

      public SQLQuery buildInsert(String tableName, Map<String,Object> values)
      构建 INSERT 语句 SQL。
      Parameters:
      tableName - 表名
      values - 列名和值的映射
      Returns:
      SQL 查询对象
    • buildUpdate

      public SQLQuery buildUpdate(String tableName, Map<String,Object> values, List<Condition> conditions)
      构建 UPDATE 语句 SQL。
      Parameters:
      tableName - 表名
      values - 要更新的列名和值的映射
      conditions - WHERE 条件列表
      Returns:
      SQL 查询对象
    • buildDelete

      public SQLQuery buildDelete(String tableName, List<Condition> conditions)
      构建 DELETE 语句 SQL。
      Parameters:
      tableName - 表名
      conditions - WHERE 条件列表
      Returns:
      SQL 查询对象
    • buildCount

      public SQLQuery buildCount(String tableName, List<Condition> conditions)
      构建 COUNT 查询 SQL。
      Parameters:
      tableName - 表名
      conditions - WHERE 条件列表
      Returns:
      SQL 查询对象
    • buildWhereClause

      public void buildWhereClause(StringBuilder sql, List<Object> parameters, List<Condition> conditions)
      构建 WHERE 子句。
      Parameters:
      sql - SQL 字符串构建器
      parameters - 参数列表
      conditions - 条件列表
    • buildWhereClause

      public String buildWhereClause(List<Condition> conditions)
      构建 WHERE 子句字符串。
      Parameters:
      conditions - 条件列表
      Returns:
      WHERE 子句字符串,如果条件为空则返回空字符串