You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2025/05/18 05:14:55 UTC
(shardingsphere) branch master updated: Split binder module into parent and core modules (#35455)
This is an automated email from the ASF dual-hosted git repository.
zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new 884d7a874e6 Split binder module into parent and core modules (#35455)
884d7a874e6 is described below
commit 884d7a874e684af412ea20536dd5dc4c28d65e4f
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sun May 18 13:14:47 2025 +0800
Split binder module into parent and core modules (#35455)
* Split binder module into parent and core modules
* Split binder module into parent and core modules
---
features/broadcast/api/pom.xml | 2 +-
features/sharding/api/pom.xml | 2 +-
infra/binder/{ => core}/pom.xml | 4 +-
.../infra/binder/context/aware/CursorAware.java | 0
.../infra/binder/context/aware/ParameterAware.java | 0
.../extractor/SQLStatementContextExtractor.java | 0
.../segment/insert/keygen/GeneratedKeyContext.java | 0
.../keygen/engine/GeneratedKeyContextEngine.java | 0
.../segment/insert/values/InsertSelectContext.java | 0
.../segment/insert/values/InsertValueContext.java | 0
.../insert/values/OnDuplicateUpdateContext.java | 0
.../DerivedLiteralExpressionSegment.java | 0
.../DerivedParameterMarkerExpressionSegment.java | 0
.../expression/DerivedSimpleExpressionSegment.java | 0
.../segment/select/groupby/GroupByContext.java | 0
.../groupby/engine/GroupByContextEngine.java | 0
.../segment/select/orderby/OrderByContext.java | 0
.../segment/select/orderby/OrderByItem.java | 0
.../orderby/engine/OrderByContextEngine.java | 0
.../select/pagination/PaginationContext.java | 0
.../engine/LimitPaginationContextEngine.java | 0
.../pagination/engine/PaginationContextEngine.java | 0
.../engine/RowNumberPaginationContextEngine.java | 0
.../engine/TopPaginationContextEngine.java | 0
.../segment/select/projection/DerivedColumn.java | 0
.../segment/select/projection/Projection.java | 0
.../select/projection/ProjectionsContext.java | 0
.../select/projection/engine/ProjectionEngine.java | 0
.../engine/ProjectionsContextEngine.java | 0
.../DialectProjectionIdentifierExtractor.java | 0
.../ProjectionIdentifierExtractEngine.java | 0
.../MySQLProjectionIdentifierExtractor.java | 0
.../OpenGaussProjectionIdentifierExtractor.java | 0
.../OracleProjectionIdentifierExtractor.java | 0
.../PostgreSQLProjectionIdentifierExtractor.java | 0
.../impl/AggregationDistinctProjection.java | 0
.../projection/impl/AggregationProjection.java | 0
.../select/projection/impl/ColumnProjection.java | 0
.../select/projection/impl/DerivedProjection.java | 0
.../projection/impl/ExpressionProjection.java | 0
.../projection/impl/ParameterMarkerProjection.java | 0
.../projection/impl/ShorthandProjection.java | 0
.../select/projection/impl/SubqueryProjection.java | 0
.../select/subquery/SubqueryTableContext.java | 0
.../engine/SubqueryTableContextEngine.java | 0
.../context/segment/table/TablesContext.java | 0
.../statement/CommonSQLStatementContext.java | 0
.../context/statement/SQLStatementContext.java | 0
.../statement/SQLStatementContextFactory.java | 0
.../statement/UnknownSQLStatementContext.java | 0
.../dal/AnalyzeTableStatementContext.java | 0
.../statement/dal/ExplainStatementContext.java | 0
.../statement/dal/FlushStatementContext.java | 0
.../dal/OptimizeTableStatementContext.java | 0
.../statement/dal/ShowColumnsStatementContext.java | 0
.../dal/ShowCreateTableStatementContext.java | 0
.../statement/dal/ShowIndexStatementContext.java | 0
.../dal/ShowTableStatusStatementContext.java | 0
.../statement/dal/ShowTablesStatementContext.java | 0
.../statement/dcl/DenyUserStatementContext.java | 0
.../statement/dcl/GrantStatementContext.java | 0
.../statement/dcl/RevokeStatementContext.java | 0
.../statement/ddl/AlterIndexStatementContext.java | 0
.../statement/ddl/AlterTableStatementContext.java | 0
.../statement/ddl/AlterViewStatementContext.java | 0
.../statement/ddl/CloseStatementContext.java | 0
.../statement/ddl/CommentStatementContext.java | 0
.../ddl/CreateFunctionStatementContext.java | 0
.../statement/ddl/CreateIndexStatementContext.java | 0
.../ddl/CreateProcedureStatementContext.java | 0
.../ddl/CreateSchemaStatementContext.java | 0
.../statement/ddl/CreateTableStatementContext.java | 0
.../statement/ddl/CreateViewStatementContext.java | 0
.../statement/ddl/CursorStatementContext.java | 0
.../statement/ddl/DropIndexStatementContext.java | 0
.../statement/ddl/DropTableStatementContext.java | 0
.../statement/ddl/DropViewStatementContext.java | 0
.../statement/ddl/FetchStatementContext.java | 0
.../statement/ddl/MoveStatementContext.java | 0
.../statement/ddl/PrepareStatementContext.java | 0
.../statement/ddl/RenameTableStatementContext.java | 0
.../statement/ddl/TruncateStatementContext.java | 0
.../statement/dml/CopyStatementContext.java | 0
.../statement/dml/DeleteStatementContext.java | 0
.../statement/dml/InsertStatementContext.java | 0
.../statement/dml/LoadDataStatementContext.java | 0
.../statement/dml/LoadXMLStatementContext.java | 0
.../statement/dml/SelectStatementContext.java | 0
.../statement/dml/UpdateStatementContext.java | 0
.../binder/context/type/ConstraintAvailable.java | 0
.../infra/binder/context/type/CursorAvailable.java | 0
.../infra/binder/context/type/IndexAvailable.java | 0
.../infra/binder/context/type/RemoveAvailable.java | 0
.../infra/binder/context/type/TableAvailable.java | 0
.../infra/binder/context/type/WhereAvailable.java | 0
.../infra/binder/context/type/WithAvailable.java | 0
.../infra/binder/engine/SQLBindEngine.java | 0
.../infra/binder/engine/segment/SegmentType.java | 0
.../dal/filter/ShowFilterSegmentBinder.java | 0
.../ddl/column/ColumnDefinitionSegmentBinder.java | 0
.../column/RenameTableDefinitionSegmentBinder.java | 0
.../dml/assign/AssignmentSegmentBinder.java | 0
.../dml/column/InsertColumnsSegmentBinder.java | 0
.../segment/dml/combine/CombineSegmentBinder.java | 0
.../dml/expression/ExpressionSegmentBinder.java | 0
...AggregationDistinctProjectionSegmentBinder.java | 0
.../type/AggregationProjectionSegmentBinder.java | 0
.../type/BetweenExpressionSegmentBinder.java | 0
.../type/BinaryOperationExpressionBinder.java | 0
.../expression/type/CaseWhenExpressionBinder.java | 0
.../dml/expression/type/ColumnSegmentBinder.java | 0
.../type/ExistsSubqueryExpressionBinder.java | 0
.../type/FunctionExpressionSegmentBinder.java | 0
.../dml/expression/type/InExpressionBinder.java | 0
.../dml/expression/type/NotExpressionBinder.java | 0
.../expression/type/OuterJoinExpressionBinder.java | 0
.../dml/expression/type/SubquerySegmentBinder.java | 0
.../segment/dml/from/TableSegmentBinder.java | 0
.../from/context/TableSegmentBinderContext.java | 0
.../type/FunctionTableSegmentBinderContext.java | 0
.../type/SimpleTableSegmentBinderContext.java | 0
.../from/type/DeleteMultiTableSegmentBinder.java | 0
.../dml/from/type/JoinTableSegmentBinder.java | 0
.../dml/from/type/SimpleTableSegmentBinder.java | 0
.../dml/from/type/SubqueryTableSegmentBinder.java | 0
.../engine/segment/dml/lock/LockSegmentBinder.java | 0
.../segment/dml/order/GroupBySegmentBinder.java | 0
.../segment/dml/order/OrderBySegmentBinder.java | 0
.../order/item/ColumnOrderByItemSegmentBinder.java | 0
.../item/ExpressionOrderByItemSegmentBinder.java | 0
.../dml/order/item/OrderByItemSegmentBinder.java | 0
.../segment/dml/predicate/HavingSegmentBinder.java | 0
.../segment/dml/predicate/WhereSegmentBinder.java | 0
.../PrepareStatementQuerySegmentBinder.java | 0
.../dml/projection/ProjectionsSegmentBinder.java | 0
.../type/ColumnProjectionSegmentBinder.java | 0
.../type/ShorthandProjectionSegmentBinder.java | 0
.../type/SubqueryProjectionSegmentBinder.java | 0
.../with/CommonTableExpressionSegmentBinder.java | 0
.../engine/segment/dml/with/WithSegmentBinder.java | 0
.../segment/util/SubqueryTableBindUtils.java | 0
.../engine/statement/SQLStatementBinder.java | 0
.../statement/SQLStatementBinderContext.java | 0
.../statement/dal/ExplainStatementBinder.java | 0
.../dal/OptimizeTableStatementBinder.java | 0
.../statement/dal/ShowColumnsStatementBinder.java | 0
.../dal/ShowCreateTableStatementBinder.java | 0
.../statement/dal/ShowIndexStatementBinder.java | 0
.../statement/dcl/DenyUserStatementBinder.java | 0
.../statement/ddl/AlterIndexStatementBinder.java | 0
.../statement/ddl/AlterTableStatementBinder.java | 0
.../statement/ddl/AlterViewStatementBinder.java | 0
.../statement/ddl/CreateIndexStatementBinder.java | 0
.../statement/ddl/CreateTableStatementBinder.java | 0
.../statement/ddl/CreateViewStatementBinder.java | 0
.../statement/ddl/CursorStatementBinder.java | 0
.../statement/ddl/DropIndexStatementBinder.java | 0
.../statement/ddl/DropTableStatementBinder.java | 0
.../statement/ddl/DropViewStatementBinder.java | 0
.../statement/ddl/RenameTableStatementBinder.java | 0
.../statement/ddl/TruncateStatementBinder.java | 0
.../engine/statement/dml/CopyStatementBinder.java | 0
.../statement/dml/DeleteStatementBinder.java | 0
.../statement/dml/InsertStatementBinder.java | 0
.../statement/dml/LoadDataStatementBinder.java | 0
.../statement/dml/LoadXMLStatementBinder.java | 0
.../statement/dml/SelectStatementBinder.java | 0
.../statement/dml/UpdateStatementBinder.java | 0
.../binder/engine/type/DALStatementBindEngine.java | 0
.../binder/engine/type/DCLStatementBindEngine.java | 0
.../binder/engine/type/DDLStatementBindEngine.java | 0
.../binder/engine/type/DMLStatementBindEngine.java | 0
....extractor.DialectProjectionIdentifierExtractor | 0
.../SQLStatementContextExtractorTest.java | 0
.../engine/GeneratedKeyContextEngineTest.java | 0
.../insert/values/InsertValueContextTest.java | 0
.../values/OnDuplicateUpdateContextTest.java | 0
.../DerivedLiteralExpressionSegmentTest.java | 0
...erivedParameterMarkerExpressionSegmentTest.java | 0
.../groupby/engine/GroupByContextEngineTest.java | 0
.../segment/select/orderby/OrderByItemTest.java | 0
.../orderby/engine/OrderByContextEngineTest.java | 0
.../select/pagination/PaginationContextTest.java | 0
.../engine/LimitPaginationContextEngineTest.java | 0
.../engine/PaginationContextEngineTest.java | 0
.../RowNumberPaginationContextEngineTest.java | 0
.../engine/TopPaginationContextEngineTest.java | 0
.../select/projection/DerivedColumnTest.java | 0
.../select/projection/ProjectionsContextTest.java | 0
.../projection/engine/ProjectionEngineTest.java | 0
.../engine/ProjectionsContextEngineTest.java | 0
.../ProjectionIdentifierExtractEngineTest.java | 0
...OpenGaussProjectionIdentifierExtractorTest.java | 0
.../OracleProjectionIdentifierExtractorTest.java | 0
...ostgreSQLProjectionIdentifierExtractorTest.java | 0
.../impl/AggregationDistinctProjectionTest.java | 0
.../projection/impl/AggregationProjectionTest.java | 0
.../projection/impl/ColumnProjectionTest.java | 0
.../projection/impl/DerivedProjectionTest.java | 0
.../projection/impl/ExpressionProjectionTest.java | 0
.../impl/ParameterMarkerProjectionTest.java | 0
.../projection/impl/ShorthandProjectionTest.java | 0
.../projection/impl/SubqueryProjectionTest.java | 0
.../engine/SubqueryTableContextEngineTest.java | 0
.../context/segment/table/TablesContextTest.java | 0
.../statement/SQLStatementContextFactoryTest.java | 0
.../dal/AnalyzeTableStatementContextTest.java | 0
.../statement/dal/ExplainStatementContextTest.java | 0
.../dal/OptimizeTableStatementContextTest.java | 0
.../dal/ShowColumnsStatementContextTest.java | 0
.../dal/ShowCreateTableStatementContextTest.java | 0
.../dal/ShowIndexStatementContextTest.java | 0
.../dcl/DenyUserStatementContextTest.java | 0
.../statement/dcl/GrantStatementContextTest.java | 0
.../statement/dcl/RevokeStatementContextTest.java | 0
.../ddl/AlterIndexStatementContextTest.java | 0
.../ddl/AlterTableStatementContextTest.java | 0
.../ddl/AlterViewStatementContextTest.java | 0
.../ddl/CreateFunctionStatementContextTest.java | 0
.../ddl/CreateIndexStatementContextTest.java | 0
.../ddl/CreateProcedureStatementContextTest.java | 0
.../ddl/CreateTableStatementContextTest.java | 0
.../ddl/CreateViewStatementContextTest.java | 0
.../ddl/DropIndexStatementContextTest.java | 0
.../ddl/DropTableStatementContextTest.java | 0
.../ddl/DropViewStatementContextTest.java | 0
.../statement/ddl/PrepareStatementContextTest.java | 0
.../ddl/TruncateStatementContextTest.java | 0
.../statement/dml/DeleteStatementContextTest.java | 0
.../statement/dml/InsertStatementContextTest.java | 0
.../statement/dml/SelectStatementContextTest.java | 0
.../statement/dml/UpdateStatementContextTest.java | 0
.../dml/assign/AssignmentSegmentBinderTest.java | 0
.../type/BinaryOperationExpressionBinderTest.java | 0
.../expression/type/ColumnSegmentBinderTest.java | 0
.../type/ExistsSubqueryExpressionBinderTest.java | 0
.../type/FunctionExpressionSegmentBinderTest.java | 0
.../expression/type/InExpressionBinderTest.java | 0
.../expression/type/NotExpressionBinderTest.java | 0
.../type/OuterJoinExpressionBinderTest.java | 0
.../expression/type/SubquerySegmentBinderTest.java | 0
.../dml/from/type/JoinTableSegmentBinderTest.java | 0
.../from/type/SimpleTableSegmentBinderTest.java | 0
.../from/type/SubqueryTableSegmentBinderTest.java | 0
.../dml/predicate/WhereSegmentBinderTest.java | 0
.../type/ShorthandProjectionSegmentBinderTest.java | 0
.../statement/dml/DeleteStatementBinderTest.java | 0
.../statement/dml/InsertStatementBinderTest.java | 0
.../statement/dml/SelectStatementBinderTest.java | 0
.../statement/dml/UpdateStatementBinderTest.java | 0
infra/binder/pom.xml | 65 ++--------------------
infra/checker/pom.xml | 2 +-
infra/session/pom.xml | 2 +-
test/it/binder/pom.xml | 2 +-
254 files changed, 11 insertions(+), 68 deletions(-)
diff --git a/features/broadcast/api/pom.xml b/features/broadcast/api/pom.xml
index 85e150f4609..586eedab583 100644
--- a/features/broadcast/api/pom.xml
+++ b/features/broadcast/api/pom.xml
@@ -29,7 +29,7 @@
<dependencies>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
diff --git a/features/sharding/api/pom.xml b/features/sharding/api/pom.xml
index 9b8b0c5f485..821616d4447 100644
--- a/features/sharding/api/pom.xml
+++ b/features/sharding/api/pom.xml
@@ -34,7 +34,7 @@
</dependency>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
diff --git a/infra/binder/pom.xml b/infra/binder/core/pom.xml
similarity index 96%
copy from infra/binder/pom.xml
copy to infra/binder/core/pom.xml
index 5b64ca12fa8..0fbdda267ba 100644
--- a/infra/binder/pom.xml
+++ b/infra/binder/core/pom.xml
@@ -20,10 +20,10 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra</artifactId>
+ <artifactId>shardingsphere-infra-binder</artifactId>
<version>5.5.3-SNAPSHOT</version>
</parent>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<name>${project.artifactId}</name>
<dependencies>
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
diff --git a/infra/binder/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor b/infra/binder/core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
similarity index 100%
rename from infra/binder/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
rename to infra/binder/core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
diff --git a/infra/binder/pom.xml b/infra/binder/pom.xml
index 5b64ca12fa8..3a6c065e250 100644
--- a/infra/binder/pom.xml
+++ b/infra/binder/pom.xml
@@ -24,67 +24,10 @@
<version>5.5.3-SNAPSHOT</version>
</parent>
<artifactId>shardingsphere-infra-binder</artifactId>
+ <packaging>pom</packaging>
<name>${project.artifactId}</name>
- <dependencies>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-engine</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-parser</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-test-util</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-test-fixture-database</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-sql92</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-mysql</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-postgresql</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-opengauss</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-oracle</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-parser-sql-sqlserver</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
+ <modules>
+ <module>core</module>
+ </modules>
</project>
diff --git a/infra/checker/pom.xml b/infra/checker/pom.xml
index d9ce04a0e5c..da7a6f1a79d 100644
--- a/infra/checker/pom.xml
+++ b/infra/checker/pom.xml
@@ -29,7 +29,7 @@
<dependencies>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
diff --git a/infra/session/pom.xml b/infra/session/pom.xml
index e92d874b833..833f10f6ce7 100644
--- a/infra/session/pom.xml
+++ b/infra/session/pom.xml
@@ -29,7 +29,7 @@
<dependencies>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
diff --git a/test/it/binder/pom.xml b/test/it/binder/pom.xml
index 4ec338860a2..fb402c90970 100644
--- a/test/it/binder/pom.xml
+++ b/test/it/binder/pom.xml
@@ -39,7 +39,7 @@
</dependency>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-infra-binder</artifactId>
+ <artifactId>shardingsphere-infra-binder-core</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
</dependency>