本文整理汇总了Java中com.alibaba.druid.sql.SQLUtils类的典型用法代码示例。如果您正苦于以下问题:Java SQLUtils类的具体用法?Java SQLUtils怎么用?Java SQLUtils使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SQLUtils类属于com.alibaba.druid.sql包,在下文中一共展示了SQLUtils类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: setLimitIFChange
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
protected void setLimitIFChange(SQLStatement stmt, RouteResultset rrs, SchemaConfig schema, SQLBinaryOpExpr one, int firstrownum, int lastrownum)
{
rrs.setLimitStart(firstrownum);
rrs.setLimitSize(lastrownum - firstrownum);
LayerCachePool tableId2DataNodeCache = (LayerCachePool) MycatServer.getInstance().getCacheService().getCachePool("TableID2DataNodeCache");
try
{
tryRoute(schema, rrs, tableId2DataNodeCache);
} catch (SQLNonTransientException e)
{
throw new RuntimeException(e);
}
if (isNeedChangeLimit(rrs))
{
one.setRight(new SQLIntegerExpr(0));
String curentDbType ="db2".equalsIgnoreCase(this.getCurentDbType())?"oracle":getCurentDbType();
String sql = SQLUtils.toSQLString(stmt, curentDbType);;
rrs.changeNodeSqlAfterAddLimit(schema,getCurentDbType(), sql,0,lastrownum, false);
//设置改写后的sql
getCtx().setSql(sql);
}
}
开发者ID:huang-up,项目名称:mycat-src-1.6.1-RELEASE,代码行数:23,代码来源:DruidSelectParser.java
示例2: isUNI
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
/**
* only for show columns
*/
public boolean isUNI(String columnName) {
for (SQLTableElement element : this.tableElementList) {
if (element instanceof MySqlUnique) {
MySqlUnique unique = (MySqlUnique) element;
if (unique.getColumns().size() == 0) {
continue;
}
SQLExpr column = unique.getColumns().get(0).getExpr();
if (column instanceof SQLIdentifierExpr
&& SQLUtils.nameEquals(columnName, ((SQLIdentifierExpr) column).getName())) {
return unique.columns.size() == 1;
} else if (column instanceof SQLMethodInvokeExpr
&& SQLUtils.nameEquals(((SQLMethodInvokeExpr) column).getMethodName(), columnName)) {
return true;
}
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:25,代码来源:SQLCreateTableStatement.java
示例3: isReferenced
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean isReferenced(String tableName) {
if (tableName == null) {
return false;
}
tableName = SQLUtils.normalize(tableName);
for (SQLTableElement element : this.tableElementList) {
if (element instanceof SQLForeignKeyConstraint) {
SQLForeignKeyConstraint fk = (SQLForeignKeyConstraint) element;
String refTableName = fk.getReferencedTableName().getSimpleName();
if (SQLUtils.nameEquals(tableName, refTableName)) {
return true;
}
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:21,代码来源:SQLCreateTableStatement.java
示例4: apply
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean apply(SQLDropIndexStatement x) {
long indexNameHashCode64 = x.getIndexName().nameHashCode64();
for (int i = tableElementList.size() - 1; i >= 0; i--) {
SQLTableElement e = tableElementList.get(i);
if (e instanceof SQLUniqueConstraint) {
SQLUniqueConstraint unique = (SQLUniqueConstraint) e;
if (unique.getName().nameHashCode64() == indexNameHashCode64) {
tableElementList.remove(i);
return true;
}
} else if (e instanceof MySqlTableIndex) {
MySqlTableIndex tableIndex = (MySqlTableIndex) e;
if (SQLUtils.nameEquals(tableIndex.getName(), x.getIndexName())) {
tableElementList.remove(i);
return true;
}
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:23,代码来源:SQLCreateTableStatement.java
示例5: columnIndexOf
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
protected int columnIndexOf(SQLName column) {
if (column == null) {
return -1;
}
String columnName = column.getSimpleName();
for (int i = tableElementList.size() - 1; i >= 0; --i) {
SQLTableElement e = tableElementList.get(i);
if (e instanceof SQLColumnDefinition) {
if (SQLUtils.nameEquals(columnName, ((SQLColumnDefinition) e).getName().getSimpleName())) {
return i;
}
}
}
return -1;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:18,代码来源:SQLCreateTableStatement.java
示例6: applyDropColumn
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean applyDropColumn(SQLName columnName) {
for (int i = columns.size() - 1; i >= 0; i--) {
SQLExpr expr = columns.get(i).getExpr();
if (expr instanceof SQLName
&& SQLUtils.nameEquals((SQLName) expr, columnName)) {
columns.remove(i);
return true;
}
if (expr instanceof SQLMethodInvokeExpr
&& SQLUtils.nameEquals(((SQLMethodInvokeExpr) expr).getMethodName(), columnName.getSimpleName())) {
columns.remove(i);
return true;
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:18,代码来源:SQLUnique.java
示例7: match
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean match(String owner, String function) {
if (function == null) {
return false;
}
if (!SQLUtils.nameEquals(function, name)) {
return false;
}
if (owner == null && this.owner == null) {
return true;
}
if (owner == null || this.owner == null) {
return false;
}
if (this.owner instanceof SQLIdentifierExpr) {
return SQLUtils.nameEquals(((SQLIdentifierExpr) this.owner).name, owner);
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:24,代码来源:SQLMethodInvokeExpr.java
示例8: computeDataType
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public SQLDataType computeDataType() {
if (SQLUtils.nameEquals("to_date", name)
|| SQLUtils.nameEquals("add_months", name)) {
return SQLDateExpr.DEFAULT_DATA_TYPE;
}
if (parameters.size() == 1) {
if (SQLUtils.nameEquals("trunc", name)) {
return parameters.get(0).computeDataType();
}
} else if (parameters.size() == 2) {
SQLExpr param0 = parameters.get(0);
SQLExpr param1 = parameters.get(1);
if (SQLUtils.nameEquals("nvl", name) || SQLUtils.nameEquals("ifnull", name)) {
SQLDataType dataType = param0.computeDataType();
if (dataType != null) {
return dataType;
}
return param1.computeDataType();
}
}
return null;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:25,代码来源:SQLMethodInvokeExpr.java
示例9: applyDropColumn
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean applyDropColumn(SQLName columnName) {
for (int i = columns.size() - 1; i >= 0; i--) {
SQLExpr expr = columns.get(i).getExpr();
if (expr instanceof SQLName
&& SQLUtils.nameEquals((SQLName) expr, columnName)) {
columns.remove(i);
return true;
}
if (expr instanceof SQLMethodInvokeExpr
&& SQLUtils.nameEquals(((SQLMethodInvokeExpr) expr).getMethodName(), columnName.getSimpleName())) {
columns.remove(i);
return true;
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:17,代码来源:MySqlTableIndex.java
示例10: computeName
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public String computeName() {
if (tableSource == null) {
return null;
}
SQLExpr expr = tableSource.getExpr();
if (expr instanceof SQLName) {
String name = ((SQLName) expr).getSimpleName();
return SQLUtils.normalize(name);
}
return null;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:14,代码来源:SQLCreateTableStatement.java
示例11: computeAlias
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public String computeAlias() {
String alias = this.getAlias();
if (alias == null) {
if (expr instanceof SQLIdentifierExpr) {
alias = ((SQLIdentifierExpr) expr).getName();
} else if (expr instanceof SQLPropertyExpr) {
alias = ((SQLPropertyExpr) expr).getName();
}
}
return SQLUtils.normalize(alias);
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:13,代码来源:SQLSelectItem.java
示例12: computeAlias
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public String computeAlias() {
String alias = null;
if (name instanceof SQLIdentifierExpr) {
alias = ((SQLIdentifierExpr) name).getName();
} else if (name instanceof SQLPropertyExpr) {
alias = ((SQLPropertyExpr) name).getName();
}
return SQLUtils.normalize(alias);
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:12,代码来源:SQLColumnDefinition.java
示例13: simplify
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public void simplify() {
enable = null;
validate = null;
rely = null;
if (this.name instanceof SQLIdentifierExpr) {
SQLIdentifierExpr identExpr = (SQLIdentifierExpr) this.name;
String columnName = identExpr.getName();
String normalized = SQLUtils.normalize(columnName, dbType);
if (normalized != columnName) {
this.setName(normalized);
}
}
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:16,代码来源:SQLColumnDefinition.java
示例14: containsAlias
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean containsAlias(String alias) {
if (SQLUtils.nameEquals(this.alias, alias)) {
return true;
}
if (left != null && left.containsAlias(alias)) {
return true;
}
if (right != null && right.containsAlias(alias)) {
return true;
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:16,代码来源:SQLJoinTableSource.java
示例15: simplify
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public void simplify() {
if (this.name instanceof SQLIdentifierExpr) {
SQLIdentifierExpr identExpr = (SQLIdentifierExpr) this.name;
String columnName = identExpr.getName();
String normalized = SQLUtils.normalize(columnName, dbType);
if (columnName != normalized) {
this.setName(normalized);
}
}
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:12,代码来源:SQLConstraintImpl.java
示例16: containsAlias
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean containsAlias(String alias) {
if (SQLUtils.nameEquals(this.alias, alias)) {
return true;
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:8,代码来源:SQLTableSourceImpl.java
示例17: computeAlias
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public String computeAlias() {
String alias = this.getAlias();
if (alias == null) {
if (expr instanceof SQLName) {
alias =((SQLName) expr).getSimpleName();
}
}
return SQLUtils.normalize(alias);
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:12,代码来源:SQLExprTableSource.java
示例18: toString
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public String toString() {
SQLObject parent = this.getParent();
if (parent instanceof SQLStatement) {
String dbType = ((SQLStatement) parent).getDbType();
if (dbType != null) {
return SQLUtils.toSQLString(this, dbType);
}
}
return super.toString();
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:13,代码来源:SQLSelect.java
示例19: containsColumn
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public boolean containsColumn(String column) {
for (SQLSelectOrderByItem item : columns) {
SQLExpr expr = item.getExpr();
if (expr instanceof SQLIdentifierExpr) {
if (SQLUtils.nameEquals(((SQLIdentifierExpr) expr).getName(), column)) {
return true;
}
}
}
return false;
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:12,代码来源:SQLUnique.java
示例20: simplify
import com.alibaba.druid.sql.SQLUtils; //导入依赖的package包/类
public void simplify() {
super.simplify();
for (SQLSelectOrderByItem item : columns) {
SQLExpr column = item.getExpr();
if (column instanceof SQLIdentifierExpr) {
SQLIdentifierExpr identExpr = (SQLIdentifierExpr) column;
String columnName = identExpr.getName();
String normalized = SQLUtils.normalize(columnName, dbType);
if (normalized != columnName) {
item.setExpr(new SQLIdentifierExpr(columnName));
}
}
}
}
开发者ID:zuonima,项目名称:sql-utils,代码行数:16,代码来源:SQLUnique.java
注:本文中的com.alibaba.druid.sql.SQLUtils类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论