From 7fe9f468ac844e543e0ff4bba6ac9128d949dd31 Mon Sep 17 00:00:00 2001 From: wenshao Date: Sun, 15 Oct 2017 15:52:41 +0800 Subject: [PATCH] imporoved sql parser. --- .../statement/MySqlAlterEventStatement.java | 13 ++ .../MySqlAlterLogFileGroupStatement.java | 11 ++ .../statement/MySqlAlterServerStatement.java | 9 ++ .../MySqlAlterTablespaceStatement.java | 11 ++ .../mysql/visitor/MySqlASTVisitor.java | 12 ++ .../mysql/visitor/MySqlASTVisitorAdapter.java | 42 ++++- .../mysql/visitor/MySqlOutputVisitor.java | 143 ++++++++++++++++++ .../mysql/visitor/MySqlSchemaStatVisitor.java | 40 +++++ .../druid/bvt/sql/mysql/AntlrMySqlTest.java | 17 ++- .../{ => select}/SQLServerSelectTest.java | 2 +- .../{ => select}/SQLServerSelectTest1.java | 2 +- .../{ => select}/SQLServerSelectTest10.java | 2 +- .../{ => select}/SQLServerSelectTest11.java | 2 +- .../{ => select}/SQLServerSelectTest12.java | 2 +- .../{ => select}/SQLServerSelectTest13.java | 2 +- .../{ => select}/SQLServerSelectTest14.java | 2 +- .../{ => select}/SQLServerSelectTest15.java | 2 +- .../{ => select}/SQLServerSelectTest16.java | 2 +- .../{ => select}/SQLServerSelectTest17.java | 2 +- .../{ => select}/SQLServerSelectTest18.java | 2 +- .../{ => select}/SQLServerSelectTest19.java | 2 +- .../{ => select}/SQLServerSelectTest2.java | 2 +- .../{ => select}/SQLServerSelectTest20.java | 2 +- .../{ => select}/SQLServerSelectTest21.java | 2 +- .../{ => select}/SQLServerSelectTest22.java | 2 +- .../{ => select}/SQLServerSelectTest23.java | 2 +- .../{ => select}/SQLServerSelectTest24.java | 2 +- .../{ => select}/SQLServerSelectTest25.java | 2 +- .../{ => select}/SQLServerSelectTest26.java | 2 +- .../{ => select}/SQLServerSelectTest27.java | 2 +- .../{ => select}/SQLServerSelectTest28.java | 2 +- .../{ => select}/SQLServerSelectTest29.java | 2 +- .../{ => select}/SQLServerSelectTest3.java | 2 +- .../{ => select}/SQLServerSelectTest30.java | 2 +- .../{ => select}/SQLServerSelectTest31.java | 2 +- .../SQLServerSelectTest32_with_hint.java | 51 +++++++ .../{ => select}/SQLServerSelectTest4.java | 2 +- .../{ => select}/SQLServerSelectTest5.java | 2 +- .../{ => select}/SQLServerSelectTest6.java | 2 +- .../{ => select}/SQLServerSelectTest7.java | 2 +- .../{ => select}/SQLServerSelectTest8.java | 2 +- .../{ => select}/SQLServerSelectTest9.java | 2 +- .../SQLServerSelectTest_cross_apply.java | 2 +- .../SQLServerSelectTest_outer_apply.java | 2 +- 44 files changed, 381 insertions(+), 36 deletions(-) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest1.java (93%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest10.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest11.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest12.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest13.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest14.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest15.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest16.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest17.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest18.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest19.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest2.java (94%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest20.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest21.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest22.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest23.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest24.java (99%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest25.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest26.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest27.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest28.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest29.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest3.java (94%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest30.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest31.java (96%) create mode 100644 src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest32_with_hint.java rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest4.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest5.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest6.java (97%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest7.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest8.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest9.java (96%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest_cross_apply.java (98%) rename src/test/java/com/alibaba/druid/bvt/sql/sqlserver/{ => select}/SQLServerSelectTest_outer_apply.java (98%) diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterEventStatement.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterEventStatement.java index 2739d6f404..395e9a0f63 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterEventStatement.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterEventStatement.java @@ -19,6 +19,7 @@ import com.alibaba.druid.sql.ast.SQLExpr; import com.alibaba.druid.sql.ast.SQLName; import com.alibaba.druid.sql.ast.SQLStatement; import com.alibaba.druid.sql.ast.statement.SQLAlterStatement; +import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor; import com.alibaba.druid.util.JdbcConstants; public class MySqlAlterEventStatement extends MySqlStatementImpl implements SQLAlterStatement { @@ -37,6 +38,18 @@ public class MySqlAlterEventStatement extends MySqlStatementImpl implements SQLA setDbType(JdbcConstants.MYSQL); } + public void accept0(MySqlASTVisitor visitor) { + if (visitor.visit(this)) { + acceptChild(visitor, definer); + acceptChild(visitor, name); + acceptChild(visitor, schedule); + acceptChild(visitor, renameTo); + acceptChild(visitor, comment); + acceptChild(visitor, eventBody); + } + visitor.endVisit(this); + } + public SQLName getDefiner() { return definer; } diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterLogFileGroupStatement.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterLogFileGroupStatement.java index 713e7ec012..004a61e9f5 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterLogFileGroupStatement.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterLogFileGroupStatement.java @@ -18,6 +18,7 @@ package com.alibaba.druid.sql.dialect.mysql.ast.statement; import com.alibaba.druid.sql.ast.SQLExpr; import com.alibaba.druid.sql.ast.SQLName; import com.alibaba.druid.sql.ast.statement.SQLAlterStatement; +import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor; public class MySqlAlterLogFileGroupStatement extends MySqlStatementImpl implements SQLAlterStatement { private SQLName name; @@ -26,6 +27,16 @@ public class MySqlAlterLogFileGroupStatement extends MySqlStatementImpl implemen private boolean wait; private SQLExpr engine; + public void accept0(MySqlASTVisitor visitor) { + if (visitor.visit(this)) { + acceptChild(visitor, name); + acceptChild(visitor, addUndoFile); + acceptChild(visitor, initialSize); + acceptChild(visitor, engine); + } + visitor.endVisit(this); + } + public SQLName getName() { return name; } diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterServerStatement.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterServerStatement.java index 9afaca7c64..c997bf46ab 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterServerStatement.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterServerStatement.java @@ -18,6 +18,7 @@ package com.alibaba.druid.sql.dialect.mysql.ast.statement; import com.alibaba.druid.sql.ast.SQLExpr; import com.alibaba.druid.sql.ast.SQLName; import com.alibaba.druid.sql.ast.statement.SQLAlterStatement; +import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor; public class MySqlAlterServerStatement extends MySqlStatementImpl implements SQLAlterStatement { private SQLName name; @@ -46,4 +47,12 @@ public class MySqlAlterServerStatement extends MySqlStatementImpl implements SQL } this.user = user; } + + public void accept0(MySqlASTVisitor visitor) { + if (visitor.visit(this)) { + acceptChild(visitor, name); + acceptChild(visitor, user); + } + visitor.endVisit(this); + } } diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterTablespaceStatement.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterTablespaceStatement.java index a42b1e6dca..c4c291686c 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterTablespaceStatement.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/ast/statement/MySqlAlterTablespaceStatement.java @@ -18,6 +18,7 @@ package com.alibaba.druid.sql.dialect.mysql.ast.statement; import com.alibaba.druid.sql.ast.SQLExpr; import com.alibaba.druid.sql.ast.SQLName; import com.alibaba.druid.sql.ast.statement.SQLAlterStatement; +import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor; public class MySqlAlterTablespaceStatement extends MySqlStatementImpl implements SQLAlterStatement { private SQLName name; @@ -28,6 +29,16 @@ public class MySqlAlterTablespaceStatement extends MySqlStatementImpl implements private boolean wait; private SQLExpr engine; + public void accept0(MySqlASTVisitor visitor) { + if (visitor.visit(this)) { + acceptChild(visitor, name); + acceptChild(visitor, addDataFile); + acceptChild(visitor, initialSize); + acceptChild(visitor, engine); + } + visitor.endVisit(this); + } + public SQLName getName() { return name; } diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitor.java index 896ce3b12e..3790067a52 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitor.java @@ -479,4 +479,16 @@ public interface MySqlASTVisitor extends SQLASTVisitor { boolean visit(MySqlCreateTableSpaceStatement x); void endVisit(MySqlCreateTableSpaceStatement x); + boolean visit(MySqlAlterEventStatement x); + void endVisit(MySqlAlterEventStatement x); + + boolean visit(MySqlAlterLogFileGroupStatement x); + void endVisit(MySqlAlterLogFileGroupStatement x); + + boolean visit(MySqlAlterServerStatement x); + void endVisit(MySqlAlterServerStatement x); + + boolean visit(MySqlAlterTablespaceStatement x); + void endVisit(MySqlAlterTablespaceStatement x); + } // diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitorAdapter.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitorAdapter.java index c7d007e354..937af1ad3b 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitorAdapter.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlASTVisitorAdapter.java @@ -1170,7 +1170,7 @@ public class MySqlASTVisitorAdapter extends SQLASTVisitorAdapter implements MySq @Override public boolean visit(MySqlCreateTableSpaceStatement x) { - return false; + return true; } @Override @@ -1178,4 +1178,44 @@ public class MySqlASTVisitorAdapter extends SQLASTVisitorAdapter implements MySq } + @Override + public boolean visit(MySqlAlterEventStatement x) { + return true; + } + + @Override + public void endVisit(MySqlAlterEventStatement x) { + + } + + @Override + public boolean visit(MySqlAlterLogFileGroupStatement x) { + return true; + } + + @Override + public void endVisit(MySqlAlterLogFileGroupStatement x) { + + } + + @Override + public boolean visit(MySqlAlterServerStatement x) { + return true; + } + + @Override + public void endVisit(MySqlAlterServerStatement x) { + + } + + @Override + public boolean visit(MySqlAlterTablespaceStatement x) { + return true; + } + + @Override + public void endVisit(MySqlAlterTablespaceStatement x) { + + } + } // diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java index 8087ba918a..d91eaf051e 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlOutputVisitor.java @@ -3918,6 +3918,149 @@ public class MySqlOutputVisitor extends SQLASTOutputVisitor implements MySqlASTV } + @Override + public boolean visit(MySqlAlterEventStatement x) { + print0(ucase ? "ALTER " : "alter "); + + SQLName definer = x.getDefiner(); + if (definer != null) { + print0(ucase ? "DEFINER = " : "definer = "); + } + + print0(ucase ? "EVENT " : "evnet "); + printExpr(x.getName()); + + MySqlEventSchedule schedule = x.getSchedule(); + if (schedule != null) { + print0(ucase ? " ON SCHEDULE " : " on schedule "); + schedule.accept(this); + } + + Boolean enable = x.getEnable(); + if (enable != null) { + if (enable) { + print0(ucase ? " ENABLE" : " enable"); + } else { + print0(ucase ? " DISABLE" : " disable"); + if (x.isDisableOnSlave()) { + print0(ucase ? " ON SLAVE" : " on slave"); + } + } + } + + SQLExpr comment = x.getComment(); + if (comment != null) { + print0(ucase ? "COMMENT " : "comment "); + comment.accept(this); + } + + SQLStatement body = x.getEventBody(); + if (body != null) { + println(); + if (!(body instanceof SQLExprStatement)) { + print0(ucase ? "DO" : "do"); + println(); + } + body.accept(this); + } + + return false; + } + + @Override + public void endVisit(MySqlAlterEventStatement x) { + + } + + @Override + public boolean visit(MySqlAlterLogFileGroupStatement x) { + print0(ucase ? "ALTER LOGFILE GROUP " : "alter logfile group "); + x.getName().accept(this); + print(' '); + print0(ucase ? "ADD UNDOFILE " : "add undofile "); + printExpr(x.getAddUndoFile()); + + SQLExpr initialSize = x.getInitialSize(); + if (initialSize != null) { + print0(ucase ? " INITIAL_SIZE " : " initial_size "); + printExpr(initialSize); + } + + if (x.isWait()) { + print0(ucase ? " WAIT" : " wait"); + } + + SQLExpr engine = x.getEngine(); + if (engine != null) { + print0(ucase ? " ENGINE " : " engine "); + printExpr(engine); + } + + return false; + } + + @Override + public void endVisit(MySqlAlterLogFileGroupStatement x) { + + } + + @Override + public boolean visit(MySqlAlterServerStatement x) { + print0(ucase ? "ATLER SERVER " : "alter server "); + x.getName().accept(this); + + print(" OPTIONS("); + SQLExpr user = x.getUser(); + if (user != null) { + print0(ucase ? "USER " : "user "); + printExpr(user); + } + + print(')'); + + return false; + } + + @Override + public void endVisit(MySqlAlterServerStatement x) { + + } + + @Override + public boolean visit(MySqlAlterTablespaceStatement x) { + print0(ucase ? "CREATE TABLESPACE " : "create tablespace "); + x.getName().accept(this); + + SQLExpr addDataFile = x.getAddDataFile(); + if (addDataFile != null) { + print0(ucase ? " ADD DATAFILE " : " add datafile "); + addDataFile.accept(this); + } + + SQLExpr initialSize = x.getInitialSize(); + if (initialSize != null) { + print0(ucase ? " INITIAL_SIZE = " : " initial_size = "); + initialSize.accept(this); + } + + if (x.isWait()) { + print0(ucase ? " WAIT" : " wait"); + } + + SQLExpr engine = x.getEngine(); + if (engine != null) { + print0(ucase ? " ENGINE " : " engine "); + printExpr(engine); + } + + return false; + } + + @Override + public void endVisit(MySqlAlterTablespaceStatement x) { + + } + protected void printQuery(SQLSelectQuery x) { Class clazz = x.getClass(); if (clazz == MySqlSelectQueryBlock.class) { diff --git a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlSchemaStatVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlSchemaStatVisitor.java index 61acc04a60..7fe6dd2701 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlSchemaStatVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/mysql/visitor/MySqlSchemaStatVisitor.java @@ -1304,4 +1304,44 @@ public class MySqlSchemaStatVisitor extends SchemaStatVisitor implements MySqlAS public void endVisit(MySqlCreateTableSpaceStatement x) { } + + @Override + public boolean visit(MySqlAlterEventStatement x) { + return false; + } + + @Override + public void endVisit(MySqlAlterEventStatement x) { + + } + + @Override + public boolean visit(MySqlAlterLogFileGroupStatement x) { + return false; + } + + @Override + public void endVisit(MySqlAlterLogFileGroupStatement x) { + + } + + @Override + public boolean visit(MySqlAlterServerStatement x) { + return false; + } + + @Override + public void endVisit(MySqlAlterServerStatement x) { + + } + + @Override + public boolean visit(MySqlAlterTablespaceStatement x) { + return false; + } + + @Override + public void endVisit(MySqlAlterTablespaceStatement x) { + + } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/mysql/AntlrMySqlTest.java b/src/test/java/com/alibaba/druid/bvt/sql/mysql/AntlrMySqlTest.java index 408682fdc1..885d128cb5 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/mysql/AntlrMySqlTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/mysql/AntlrMySqlTest.java @@ -1,22 +1,37 @@ package com.alibaba.druid.bvt.sql.mysql; import com.alibaba.druid.sql.SQLUtils; +import com.alibaba.druid.sql.ast.SQLStatement; +import com.alibaba.druid.sql.visitor.SchemaStatVisitor; import com.alibaba.druid.util.JdbcConstants; +import com.alibaba.druid.wall.WallProvider; +import com.alibaba.druid.wall.WallUtils; +import com.alibaba.druid.wall.spi.MySqlWallProvider; import junit.framework.TestCase; import org.apache.commons.io.FileUtils; import java.io.File; import java.net.URL; +import java.util.List; public class AntlrMySqlTest extends TestCase { public void test_for_antlr_examples() throws Exception { + SchemaStatVisitor schemaStatVisitor = SQLUtils.createSchemaStatVisitor(JdbcConstants.MYSQL); + MySqlWallProvider provider = new MySqlWallProvider(); + String path = "bvt/parser/antlr_grammers_v4_mysql/examples/"; URL resource = Thread.currentThread().getContextClassLoader().getResource(path); File dir = new File(resource.getFile()); for (File file : dir.listFiles()) { System.out.println(file); String sql = FileUtils.readFileToString(file); - SQLUtils.parseStatements(sql, JdbcConstants.MYSQL); + List stmtList = SQLUtils.parseStatements(sql, JdbcConstants.MYSQL); + for (SQLStatement stmt : stmtList) { + stmt.toString(); + + stmt.accept(schemaStatVisitor); + provider.checkValid(sql); + } } } } diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest.java index 473d1d57db..3d1bd9ff8a 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest1.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest1.java similarity index 93% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest1.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest1.java index 3932faaf93..cfeb7d7fda 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest1.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest1.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest10.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest10.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest10.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest10.java index ba5e31d9e7..325d1798a5 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest10.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest10.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest11.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest11.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest11.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest11.java index 92f6f6e975..64dc989396 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest11.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest11.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest12.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest12.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest12.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest12.java index 3cad341df7..d3ad60e594 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest12.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest12.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest13.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest13.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest13.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest13.java index 792bde721e..3da9c24470 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest13.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest13.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest14.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest14.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest14.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest14.java index ceda0ef8c8..a2100e0c48 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest14.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest14.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest15.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest15.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest15.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest15.java index 90966bcb73..840a047827 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest15.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest15.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest16.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest16.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest16.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest16.java index a5f749b049..48b89243a6 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest16.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest16.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest17.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest17.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest17.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest17.java index 1e9537ecc1..767c5fe1e0 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest17.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest17.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest18.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest18.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest18.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest18.java index 6697e1c612..34f40b7d9a 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest18.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest18.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest19.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest19.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest19.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest19.java index 914bb4dfcf..b205959ec9 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest19.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest19.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest2.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest2.java similarity index 94% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest2.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest2.java index 6a4db75f76..807c9dcc9f 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest2.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest2.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest20.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest20.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest20.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest20.java index ac4ef38428..2265028118 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest20.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest20.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest21.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest21.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest21.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest21.java index 798f87c0c5..fa37af857f 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest21.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest21.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest22.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest22.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest22.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest22.java index c41b1d135d..6a24f643d4 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest22.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest22.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest23.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest23.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest23.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest23.java index 52254b6b39..c9ec5e16a1 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest23.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest23.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest24.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest24.java similarity index 99% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest24.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest24.java index 998954f0f8..095acb6460 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest24.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest24.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest25.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest25.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest25.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest25.java index e8f135f448..a51c757ddc 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest25.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest25.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest26.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest26.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest26.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest26.java index ffe57509c5..d04918c40c 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest26.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest26.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest27.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest27.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest27.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest27.java index a3d13cfcc0..6f0a19d383 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest27.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest27.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest28.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest28.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest28.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest28.java index 11208ed54d..4907b4dbf2 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest28.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest28.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest29.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest29.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest29.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest29.java index f8004e586f..f7e5208132 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest29.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest29.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest3.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest3.java similarity index 94% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest3.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest3.java index 85c48cdf36..b4205d7b32 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest3.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest3.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest30.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest30.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest30.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest30.java index 7e51902117..f79b07c1ed 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest30.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest30.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest31.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest31.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest31.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest31.java index d0711f1e45..44f35cbaac 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest31.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest31.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import com.alibaba.druid.sql.SQLUtils; import com.alibaba.druid.sql.ast.SQLStatement; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest32_with_hint.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest32_with_hint.java new file mode 100644 index 0000000000..9017c287ed --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest32_with_hint.java @@ -0,0 +1,51 @@ +/* + * Copyright 1999-2017 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.druid.bvt.sql.sqlserver.select; + +import com.alibaba.druid.sql.SQLUtils; +import com.alibaba.druid.sql.ast.SQLStatement; +import com.alibaba.druid.util.JdbcConstants; +import junit.framework.TestCase; + +import java.util.List; + +public class SQLServerSelectTest32_with_hint extends TestCase { + + public void test_simple() throws Exception { + String sql = // + "SELECT * FROM dbo.Customers AS c \n" + + "WITH (SNAPSHOT) \n" + + "LEFT JOIN dbo.[Order History] AS oh \n" + + " ON c.customer_id=oh.customer_id;"; // + + List stmtList = SQLUtils.parseStatements(sql, JdbcConstants.SQL_SERVER); + + { + String text = SQLUtils.toSQLString(stmtList, JdbcConstants.SQL_SERVER); + + assertEquals("SELECT *\n" + + "FROM dbo.Customers c WITH (SNAPSHOT)\n" + + "\tLEFT JOIN dbo.[Order History] oh ON c.customer_id = oh.customer_id;", text); + } + { + String text = SQLUtils.toSQLString(stmtList, JdbcConstants.SQL_SERVER, SQLUtils.DEFAULT_LCASE_FORMAT_OPTION); + + assertEquals("select *\n" + + "from dbo.Customers c with (SNAPSHOT)\n" + + "\tleft join dbo.[Order History] oh on c.customer_id = oh.customer_id;", text); + } + } +} diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest4.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest4.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest4.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest4.java index c1551017c5..1cbac42d5e 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest4.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest4.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest5.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest5.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest5.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest5.java index 1a55c7b49b..052b8227c0 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest5.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest5.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import org.junit.Assert; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest6.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest6.java similarity index 97% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest6.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest6.java index 5e017e61c6..9603051102 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest6.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest6.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest7.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest7.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest7.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest7.java index 2719999ace..cf8223c02b 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest7.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest7.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest8.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest8.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest8.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest8.java index 8afe366dbe..11d8c90f6a 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest8.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest8.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest9.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest9.java similarity index 96% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest9.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest9.java index f79c3c49ed..e17bb244a8 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest9.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest9.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import junit.framework.TestCase; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_cross_apply.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_cross_apply.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_cross_apply.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_cross_apply.java index 3d7c6fd92c..792c1a94e8 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_cross_apply.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_cross_apply.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import java.util.List; diff --git a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_outer_apply.java b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_outer_apply.java similarity index 98% rename from src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_outer_apply.java rename to src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_outer_apply.java index 0398791b60..dd0bc51ffb 100644 --- a/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/SQLServerSelectTest_outer_apply.java +++ b/src/test/java/com/alibaba/druid/bvt/sql/sqlserver/select/SQLServerSelectTest_outer_apply.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.alibaba.druid.bvt.sql.sqlserver; +package com.alibaba.druid.bvt.sql.sqlserver.select; import java.util.List;