mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
refactor
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
package com.alibaba.druid.sql.dialect.sqlserver.ast.expr;
|
||||
|
||||
import com.alibaba.druid.sql.ast.SQLExpr;
|
||||
|
||||
|
||||
public interface SQLServerExpr extends SQLExpr {
|
||||
|
||||
}
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
package com.alibaba.druid.sql.dialect.sqlserver.ast.expr;
|
||||
|
||||
import com.alibaba.druid.sql.dialect.sqlserver.ast.SQLServerObjectImpl;
|
||||
import com.alibaba.druid.sql.dialect.sqlserver.visitor.SQLServerASTVisitor;
|
||||
|
||||
public class SQLServerObjectReferenceExpr extends SQLServerObjectImpl implements SQLServerExpr {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String server;
|
||||
private String database;
|
||||
private String schema;
|
||||
private String object;
|
||||
|
||||
@Override
|
||||
public void accept0(SQLServerASTVisitor visitor) {
|
||||
|
||||
}
|
||||
|
||||
public void output(StringBuffer buf) {
|
||||
boolean flag = false;
|
||||
if (server != null) {
|
||||
buf.append(server);
|
||||
buf.append('.');
|
||||
flag = true;
|
||||
}
|
||||
|
||||
if (database != null) {
|
||||
buf.append(database);
|
||||
buf.append('.');
|
||||
flag = true;
|
||||
} else {
|
||||
if (flag) {
|
||||
buf.append('.');
|
||||
}
|
||||
}
|
||||
|
||||
if (schema != null) {
|
||||
buf.append(schema);
|
||||
buf.append('.');
|
||||
flag = true;
|
||||
} else {
|
||||
if (flag) {
|
||||
buf.append('.');
|
||||
}
|
||||
}
|
||||
|
||||
buf.append(object);
|
||||
}
|
||||
|
||||
public String getServer() {
|
||||
return server;
|
||||
}
|
||||
|
||||
public void setServer(String server) {
|
||||
this.server = server;
|
||||
}
|
||||
|
||||
public String getDatabase() {
|
||||
return database;
|
||||
}
|
||||
|
||||
public void setDatabase(String database) {
|
||||
this.database = database;
|
||||
}
|
||||
|
||||
public String getSchema() {
|
||||
return schema;
|
||||
}
|
||||
|
||||
public void setSchema(String schema) {
|
||||
this.schema = schema;
|
||||
}
|
||||
|
||||
public String getObject() {
|
||||
return object;
|
||||
}
|
||||
|
||||
public void setObject(String object) {
|
||||
this.object = object;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.alibaba.druid.sql.dialect.sqlserver.parser;
|
||||
|
||||
import com.alibaba.druid.sql.parser.Lexer;
|
||||
import com.alibaba.druid.sql.parser.ParserException;
|
||||
import com.alibaba.druid.sql.parser.SQLExprParser;
|
||||
|
||||
public class SQLServerExprParser extends SQLExprParser {
|
||||
|
||||
public SQLServerExprParser(Lexer lexer){
|
||||
super(lexer);
|
||||
}
|
||||
|
||||
public SQLServerExprParser(String sql) throws ParserException{
|
||||
super(new SQLServerLexer(sql));
|
||||
this.lexer.nextToken();
|
||||
}
|
||||
|
||||
}
|
||||
+1
@@ -24,6 +24,7 @@ public class SQLServerStatementParser extends SQLStatementParser {
|
||||
public SQLServerStatementParser(String sql){
|
||||
super(new SQLServerLexer(sql));
|
||||
this.lexer.nextToken();
|
||||
this.exprParser = new SQLServerExprParser(lexer);
|
||||
}
|
||||
|
||||
public SQLSelectParser createSQLSelectParser() {
|
||||
|
||||
Reference in New Issue
Block a user