public final class ParseContext extends Object
| 构造器和说明 |
|---|
ParseContext(int parseContextIndex) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addCondition(com.alibaba.druid.sql.ast.SQLExpr expr,
Condition.BinaryOperator operator,
List<com.alibaba.druid.sql.ast.SQLExpr> valueExprList,
DatabaseType databaseType,
List<Object> parameters)
向解析上下文中添加条件对象.
|
void |
addCondition(String columnName,
String tableName,
Condition.BinaryOperator operator,
com.alibaba.druid.sql.ast.SQLExpr valueExpr,
DatabaseType databaseType,
List<Object> parameters)
将条件对象加入解析上下文.
|
void |
addDerivedColumnsForAvgColumn(AggregationColumn avgColumn)
将求平均值函数的补列加入解析上下文.
|
void |
addGroupByColumns(com.google.common.base.Optional<String> owner,
String name,
OrderByColumn.OrderByType orderByType)
将分组列加入解析上下文.
|
void |
addOrderByColumn(int index,
OrderByColumn.OrderByType orderByType)
将排序列加入解析上下文.
|
void |
addOrderByColumn(com.google.common.base.Optional<String> owner,
String name,
OrderByColumn.OrderByType orderByType)
将排序列加入解析上下文.
|
Table |
addTable(com.alibaba.druid.sql.ast.statement.SQLExprTableSource x)
将表对象加入解析上下文.
|
void |
increaseItemIndex()
增加查询投射项数量.
|
boolean |
isBinaryOperateWithAlias(com.alibaba.druid.sql.ast.expr.SQLPropertyExpr x,
String tableOrAliasName)
判断SQL表达式是否为二元操作且带有别名.
|
void |
mergeCurrentConditionContext()
将当前解析的条件对象归并入解析结果.
|
void |
registerSelectItem(String selectItem)
注册SELECT语句中声明的列名称或别名.
|
void |
setCurrentTable(String currentTableName,
com.google.common.base.Optional<String> currentAlias)
设置当前正在访问的表.
|
public void increaseItemIndex()
public void setCurrentTable(String currentTableName, com.google.common.base.Optional<String> currentAlias)
currentTableName - 表名称currentAlias - 表别名public Table addTable(com.alibaba.druid.sql.ast.statement.SQLExprTableSource x)
x - 表名表达式, 来源于FROM, INSERT ,UPDATE, DELETE等语句public void addCondition(com.alibaba.druid.sql.ast.SQLExpr expr,
Condition.BinaryOperator operator,
List<com.alibaba.druid.sql.ast.SQLExpr> valueExprList,
DatabaseType databaseType,
List<Object> parameters)
expr - SQL表达式operator - 操作符valueExprList - 值对象表达式集合databaseType - 数据库类型parameters - 通过占位符传进来的参数public void addCondition(String columnName, String tableName, Condition.BinaryOperator operator, com.alibaba.druid.sql.ast.SQLExpr valueExpr, DatabaseType databaseType, List<Object> parameters)
columnName - 列名称tableName - 表名称operator - 操作符valueExpr - 值对象表达式databaseType - 数据库类型parameters - 通过占位符传进来的参数public boolean isBinaryOperateWithAlias(com.alibaba.druid.sql.ast.expr.SQLPropertyExpr x,
String tableOrAliasName)
x - 待判断的SQL表达式tableOrAliasName - 表名称或别名public void addDerivedColumnsForAvgColumn(AggregationColumn avgColumn)
avgColumn - 求平均值的列public void addOrderByColumn(int index,
OrderByColumn.OrderByType orderByType)
index - 列顺序索引orderByType - 排序类型public void addOrderByColumn(com.google.common.base.Optional<String> owner, String name, OrderByColumn.OrderByType orderByType)
owner - 列拥有者name - 列名称orderByType - 排序类型public void addGroupByColumns(com.google.common.base.Optional<String> owner, String name, OrderByColumn.OrderByType orderByType)
owner - 列拥有者name - 列名称orderByType - 排序类型public void mergeCurrentConditionContext()
public void registerSelectItem(String selectItem)
selectItem - SELECT语句中声明的列名称或别名Copyright © 2016. All rights reserved.