You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2022/11/20 12:15:18 UTC

[shardingsphere] branch master updated: Rename DropRuleStatement' getNames (#22293)

This is an automated email from the ASF dual-hosted git repository.

duanzhengqiang 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 fdd4f8b3e6d Rename DropRuleStatement' getNames (#22293)
fdd4f8b3e6d is described below

commit fdd4f8b3e6d87ae18d8246b9d2b17b2110c2d201
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sun Nov 20 20:15:12 2022 +0800

    Rename DropRuleStatement' getNames (#22293)
---
 ...DatabaseDiscoveryHeartbeatStatementUpdater.java |   8 +-
 .../DropDatabaseDiscoveryRuleStatementUpdater.java |   8 +-
 .../DropDatabaseDiscoveryHeartbeatStatement.java   |   6 +-
 .../DropDatabaseDiscoveryRuleStatement.java        |   6 +-
 ...DropReadwriteSplittingRuleStatementUpdater.java |  10 +-
 .../DropReadwriteSplittingRuleStatement.java       |   6 +-
 .../DropShadowAlgorithmStatementUpdater.java       |   6 +-
 .../update/DropShadowRuleStatementUpdater.java     |   6 +-
 .../statement/DropShadowAlgorithmStatement.java    |   6 +-
 .../parser/statement/DropShadowRuleStatement.java  |   6 +-
 .../DropBroadcastTableRuleStatementUpdater.java    |   6 +-
 .../DropShardingAlgorithmStatementUpdater.java     |   8 +-
 .../DropShardingAuditorStatementUpdater.java       |   6 +-
 .../DropShardingKeyGeneratorStatementUpdater.java  |   6 +-
 .../statement/DropBroadcastTableRuleStatement.java |   6 +-
 .../statement/DropShardingAlgorithmStatement.java  |   6 +-
 .../statement/DropShardingAuditorStatement.java    |   6 +-
 .../DropShardingKeyGeneratorStatement.java         |   6 +-
 .../updatable/DropTrafficRuleStatementAssert.java  |   2 +-
 .../DropBroadcastTableRuleStatementAssert.java     |   2 +-
 ...pDatabaseDiscoveryHeartbeatStatementAssert.java |   2 +-
 .../DropDatabaseDiscoveryRuleStatementAssert.java  |   2 +-
 .../DropReadwriteSplittingRuleStatementAssert.java |   2 +-
 .../impl/DropShadowAlgorithmStatementAssert.java   |   2 +-
 .../drop/impl/DropShadowRuleStatementAssert.java   |   2 +-
 .../impl/DropShardingAlgorithmStatementAssert.java |   4 +-
 .../impl/DropShardingAuditorStatementAssert.java   |   4 +-
 .../DropShardingKeyGeneratorStatementAssert.java   |   4 +-
 .../ral/DropTrafficRuleStatementTestCase.java      |   6 +-
 ...DropDatabaseDiscoveryRuleStatementTestCase.java |   4 +-
 ...ropReadwriteSplittingRuleStatementTestCase.java |   4 +-
 .../DropShadowAlgorithmStatementTestCase.java      |   4 +-
 .../shadow/DropShadowRuleStatementTestCase.java    |   6 +-
 .../DropBroadcastTableRuleStatementTestCase.java   |   4 +-
 .../DropShardingAlgorithmStatementTestCase.java    |   8 +-
 .../DropShardingAuditorStatementTestCase.java      |   6 +-
 .../DropShardingKeyGeneratorStatementTestCase.java |   6 +-
 .../DropShardingTableRuleStatementTestCase.java    |   2 +
 .../src/main/resources/case/ral/updatable.xml      |   4 +-
 test/parser/src/main/resources/case/rdl/drop.xml   | 142 ++++++++++++---------
 40 files changed, 186 insertions(+), 154 deletions(-)

diff --git a/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java b/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java
index d2174e1d726..a6520c0b1c0 100644
--- a/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java
+++ b/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryHeartbeatStatementUpdater.java
@@ -53,19 +53,19 @@ public final class DropDatabaseDiscoveryHeartbeatStatementUpdater implements Rul
     
     private void checkIsExist(final String databaseName, final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
         Collection<String> currentRuleNames = currentRuleConfig.getDiscoveryHeartbeats().keySet();
-        Collection<String> notExistedRuleNames = sqlStatement.getHeartbeatNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
+        Collection<String> notExistedRuleNames = sqlStatement.getNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(notExistedRuleNames.isEmpty(), () -> new MissingRequiredRuleException(RULE_TYPE, databaseName, notExistedRuleNames));
     }
     
     private void checkIsInUse(final String databaseName, final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
         Collection<String> heartbeatInUse = currentRuleConfig.getDataSources().stream().map(DatabaseDiscoveryDataSourceRuleConfiguration::getDiscoveryHeartbeatName).collect(Collectors.toSet());
-        Collection<String> invalid = sqlStatement.getHeartbeatNames().stream().filter(heartbeatInUse::contains).collect(Collectors.toList());
+        Collection<String> invalid = sqlStatement.getNames().stream().filter(heartbeatInUse::contains).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(invalid.isEmpty(), () -> new RuleInUsedException(RULE_TYPE, databaseName, invalid));
     }
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
-        for (String each : sqlStatement.getHeartbeatNames()) {
+        for (String each : sqlStatement.getNames()) {
             dropRule(currentRuleConfig, each);
         }
         return false;
@@ -77,7 +77,7 @@ public final class DropDatabaseDiscoveryHeartbeatStatementUpdater implements Rul
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropDatabaseDiscoveryHeartbeatStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
-        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(currentRuleConfig.getDiscoveryHeartbeats().keySet(), sqlStatement.getHeartbeatNames()).isEmpty();
+        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(currentRuleConfig.getDiscoveryHeartbeats().keySet(), sqlStatement.getNames()).isEmpty();
     }
     
     @Override
diff --git a/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java b/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java
index 570d633e381..f29e7775aac 100644
--- a/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java
+++ b/features/db-discovery/distsql/handler/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/DropDatabaseDiscoveryRuleStatementUpdater.java
@@ -61,7 +61,7 @@ public final class DropDatabaseDiscoveryRuleStatementUpdater implements RuleDefi
     
     private void checkIsExist(final String databaseName, final DropDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
         Collection<String> currentRuleNames = currentRuleConfig.getDataSources().stream().map(DatabaseDiscoveryDataSourceRuleConfiguration::getGroupName).collect(Collectors.toList());
-        Collection<String> notExistedRuleNames = sqlStatement.getRuleNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
+        Collection<String> notExistedRuleNames = sqlStatement.getNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(notExistedRuleNames.isEmpty(), () -> new MissingRequiredRuleException(RULE_TYPE, databaseName));
     }
     
@@ -74,13 +74,13 @@ public final class DropDatabaseDiscoveryRuleStatementUpdater implements RuleDefi
                     .map(each -> (Map<String, Map<String, String>>) each).orElse(Collections.emptyMap());
             readwriteRuleMap.values().stream().map(each -> each.get(ExportableItemConstants.AUTO_AWARE_DATA_SOURCE_NAME)).forEach(rulesInUse::add);
         });
-        Collection<String> invalid = sqlStatement.getRuleNames().stream().filter(rulesInUse::contains).collect(Collectors.toList());
+        Collection<String> invalid = sqlStatement.getNames().stream().filter(rulesInUse::contains).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(invalid.isEmpty(), () -> new RuleInUsedException(RULE_TYPE, databaseName, invalid));
     }
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
-        for (String each : sqlStatement.getRuleNames()) {
+        for (String each : sqlStatement.getNames()) {
             dropRule(currentRuleConfig, each);
         }
         return false;
@@ -95,7 +95,7 @@ public final class DropDatabaseDiscoveryRuleStatementUpdater implements RuleDefi
     public boolean hasAnyOneToBeDropped(final DropDatabaseDiscoveryRuleStatement sqlStatement, final DatabaseDiscoveryRuleConfiguration currentRuleConfig) {
         return isExistRuleConfig(currentRuleConfig)
                 && !getIdenticalData(currentRuleConfig.getDataSources().stream().map(DatabaseDiscoveryDataSourceRuleConfiguration::getGroupName).collect(Collectors.toSet()),
-                        sqlStatement.getRuleNames()).isEmpty();
+                        sqlStatement.getNames()).isEmpty();
     }
     
     @Override
diff --git a/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryHeartbeatStatement.java b/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryHeartbeatStatement.java
index a131a5f41e8..709ff6ef6f3 100644
--- a/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryHeartbeatStatement.java
+++ b/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryHeartbeatStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropDatabaseDiscoveryHeartbeatStatement extends DropRuleStatement {
     
-    private final Collection<String> heartbeatNames;
+    private final Collection<String> names;
     
-    public DropDatabaseDiscoveryHeartbeatStatement(final boolean ifExists, final Collection<String> heartbeatNames) {
+    public DropDatabaseDiscoveryHeartbeatStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.heartbeatNames = heartbeatNames;
+        this.names = names;
     }
 }
diff --git a/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryRuleStatement.java b/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryRuleStatement.java
index 08f42e41d8f..7eee4bec6e6 100644
--- a/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryRuleStatement.java
+++ b/features/db-discovery/distsql/statement/src/main/java/org/apache/shardingsphere/dbdiscovery/distsql/parser/statement/DropDatabaseDiscoveryRuleStatement.java
@@ -30,10 +30,10 @@ import java.util.Collection;
 @Getter
 public final class DropDatabaseDiscoveryRuleStatement extends DropRuleStatement {
     
-    private final Collection<String> ruleNames;
+    private final Collection<String> names;
     
-    public DropDatabaseDiscoveryRuleStatement(final boolean ifExists, final Collection<String> ruleNames) {
+    public DropDatabaseDiscoveryRuleStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.ruleNames = ruleNames;
+        this.names = names;
     }
 }
diff --git a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java
index 643be82232d..b3bb6a46943 100644
--- a/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java
+++ b/features/readwrite-splitting/distsql/handler/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/handler/update/DropReadwriteSplittingRuleStatementUpdater.java
@@ -61,13 +61,13 @@ public final class DropReadwriteSplittingRuleStatementUpdater implements RuleDef
             return;
         }
         Collection<String> currentRuleNames = currentRuleConfig.getDataSources().stream().map(ReadwriteSplittingDataSourceRuleConfiguration::getName).collect(Collectors.toList());
-        Collection<String> notExistedRuleNames = sqlStatement.getRuleNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
-        ShardingSpherePreconditions.checkState(notExistedRuleNames.isEmpty(), () -> new MissingRequiredRuleException("Readwrite splitting", databaseName, sqlStatement.getRuleNames()));
+        Collection<String> notExistedRuleNames = sqlStatement.getNames().stream().filter(each -> !currentRuleNames.contains(each)).collect(Collectors.toList());
+        ShardingSpherePreconditions.checkState(notExistedRuleNames.isEmpty(), () -> new MissingRequiredRuleException("Readwrite splitting", databaseName, sqlStatement.getNames()));
     }
     
     private void checkToBeDroppedInUsed(final ShardingSphereDatabase database, final DropReadwriteSplittingRuleStatement sqlStatement) throws RuleInUsedException {
         Collection<String> resourceBeUsed = getInUsedResources(database);
-        Collection<String> ruleInUsed = sqlStatement.getRuleNames().stream().filter(resourceBeUsed::contains).collect(Collectors.toSet());
+        Collection<String> ruleInUsed = sqlStatement.getNames().stream().filter(resourceBeUsed::contains).collect(Collectors.toSet());
         ShardingSpherePreconditions.checkState(ruleInUsed.isEmpty(), () -> new RuleInUsedException("Readwrite splitting", database.getName(), ruleInUsed));
     }
     
@@ -91,7 +91,7 @@ public final class DropReadwriteSplittingRuleStatementUpdater implements RuleDef
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropReadwriteSplittingRuleStatement sqlStatement, final ReadwriteSplittingRuleConfiguration currentRuleConfig) {
-        for (String each : sqlStatement.getRuleNames()) {
+        for (String each : sqlStatement.getNames()) {
             dropRule(currentRuleConfig, each);
         }
         return currentRuleConfig.getDataSources().isEmpty();
@@ -115,7 +115,7 @@ public final class DropReadwriteSplittingRuleStatementUpdater implements RuleDef
     @Override
     public boolean hasAnyOneToBeDropped(final DropReadwriteSplittingRuleStatement sqlStatement, final ReadwriteSplittingRuleConfiguration currentRuleConfig) {
         return null != currentRuleConfig && !getIdenticalData(currentRuleConfig.getDataSources().stream()
-                .map(ReadwriteSplittingDataSourceRuleConfiguration::getName).collect(Collectors.toSet()), sqlStatement.getRuleNames()).isEmpty();
+                .map(ReadwriteSplittingDataSourceRuleConfiguration::getName).collect(Collectors.toSet()), sqlStatement.getNames()).isEmpty();
     }
     
     @Override
diff --git a/features/readwrite-splitting/distsql/statement/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/parser/statement/DropReadwriteSplittingRuleStatement.java b/features/readwrite-splitting/distsql/statement/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/parser/statement/DropReadwriteSplittingRuleStatement.java
index c41af2d4a28..4bf72b9955e 100644
--- a/features/readwrite-splitting/distsql/statement/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/parser/statement/DropReadwriteSplittingRuleStatement.java
+++ b/features/readwrite-splitting/distsql/statement/src/main/java/org/apache/shardingsphere/readwritesplitting/distsql/parser/statement/DropReadwriteSplittingRuleStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropReadwriteSplittingRuleStatement extends DropRuleStatement {
     
-    private final Collection<String> ruleNames;
+    private final Collection<String> names;
     
-    public DropReadwriteSplittingRuleStatement(final boolean ifExists, final Collection<String> ruleNames) {
+    public DropReadwriteSplittingRuleStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.ruleNames = ruleNames;
+        this.names = names;
     }
 }
diff --git a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
index cbadb7ee8fb..98269f2b224 100644
--- a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
+++ b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowAlgorithmStatementUpdater.java
@@ -59,7 +59,7 @@ public final class DropShadowAlgorithmStatementUpdater implements RuleDefinition
     
     private void checkAlgorithm(final String databaseName, final DropShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
         Collection<String> currentAlgorithms = ShadowRuleStatementSupporter.getAlgorithmNames(currentRuleConfig);
-        Collection<String> requireAlgorithms = sqlStatement.getAlgorithmNames();
+        Collection<String> requireAlgorithms = sqlStatement.getNames();
         String defaultShadowAlgorithmName = currentRuleConfig.getDefaultShadowAlgorithmName();
         if (!sqlStatement.isIfExists()) {
             ShadowRuleStatementChecker.checkAlgorithmExist(requireAlgorithms, currentAlgorithms, different -> new MissingRequiredAlgorithmException(SHADOW, databaseName, different));
@@ -82,12 +82,12 @@ public final class DropShadowAlgorithmStatementUpdater implements RuleDefinition
     @Override
     public boolean hasAnyOneToBeDropped(final DropShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
         return null != currentRuleConfig
-                && !getIdenticalData(ShadowRuleStatementSupporter.getAlgorithmNames(currentRuleConfig), sqlStatement.getAlgorithmNames()).isEmpty();
+                && !getIdenticalData(ShadowRuleStatementSupporter.getAlgorithmNames(currentRuleConfig), sqlStatement.getNames()).isEmpty();
     }
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropShadowAlgorithmStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
-        Collection<String> algorithmNames = sqlStatement.getAlgorithmNames();
+        Collection<String> algorithmNames = sqlStatement.getNames();
         algorithmNames.forEach(each -> currentRuleConfig.getShadowAlgorithms().remove(each));
         currentRuleConfig.getTables().forEach((key, value) -> value.getShadowAlgorithmNames().removeIf(algorithmNames::contains));
         getEmptyTableRules(currentRuleConfig.getTables()).forEach(each -> currentRuleConfig.getTables().remove(each));
diff --git a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
index a4ef9b653a3..c6004efe301 100644
--- a/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
+++ b/features/shadow/distsql/handler/src/main/java/org/apache/shardingsphere/shadow/distsql/handler/update/DropShadowRuleStatementUpdater.java
@@ -50,7 +50,7 @@ public final class DropShadowRuleStatementUpdater implements RuleDefinitionDropU
     
     private void checkRuleNames(final String databaseName, final DropShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
         if (!sqlStatement.isIfExists()) {
-            ShadowRuleStatementChecker.checkRulesExist(sqlStatement.getRuleNames(), getDataSourceNames(currentRuleConfig),
+            ShadowRuleStatementChecker.checkRulesExist(sqlStatement.getNames(), getDataSourceNames(currentRuleConfig),
                     different -> new MissingRequiredRuleException(SHADOW, databaseName, different));
         }
     }
@@ -63,12 +63,12 @@ public final class DropShadowRuleStatementUpdater implements RuleDefinitionDropU
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
-        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(sqlStatement.getRuleNames(), getDataSourceNames(currentRuleConfig)).isEmpty();
+        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(sqlStatement.getNames(), getDataSourceNames(currentRuleConfig)).isEmpty();
     }
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropShadowRuleStatement sqlStatement, final ShadowRuleConfiguration currentRuleConfig) {
-        Collection<String> ruleNames = sqlStatement.getRuleNames();
+        Collection<String> ruleNames = sqlStatement.getNames();
         ruleNames.forEach(each -> currentRuleConfig.getDataSources().remove(each));
         currentRuleConfig.getTables().forEach((key, value) -> value.getDataSourceNames().removeIf(ruleNames::contains));
         return false;
diff --git a/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowAlgorithmStatement.java b/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowAlgorithmStatement.java
index 1b83bed7918..28532cf2929 100644
--- a/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowAlgorithmStatement.java
+++ b/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowAlgorithmStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropShadowAlgorithmStatement extends DropRuleStatement {
     
-    private final Collection<String> algorithmNames;
+    private final Collection<String> names;
     
-    public DropShadowAlgorithmStatement(final boolean ifExists, final Collection<String> algorithmNames) {
+    public DropShadowAlgorithmStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.algorithmNames = algorithmNames;
+        this.names = names;
     }
 }
diff --git a/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowRuleStatement.java b/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowRuleStatement.java
index b90cad1bedd..3630da12fdf 100644
--- a/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowRuleStatement.java
+++ b/features/shadow/distsql/statement/src/main/java/org/apache/shardingsphere/shadow/distsql/parser/statement/DropShadowRuleStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropShadowRuleStatement extends DropRuleStatement {
     
-    private final Collection<String> ruleNames;
+    private final Collection<String> names;
     
-    public DropShadowRuleStatement(final boolean ifExists, final Collection<String> ruleNames) {
+    public DropShadowRuleStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.ruleNames = ruleNames;
+        this.names = names;
     }
 }
diff --git a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropBroadcastTableRuleStatementUpdater.java b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropBroadcastTableRuleStatementUpdater.java
index 9ebb67b9fcf..56439a7aa84 100644
--- a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropBroadcastTableRuleStatementUpdater.java
+++ b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropBroadcastTableRuleStatementUpdater.java
@@ -48,7 +48,7 @@ public final class DropBroadcastTableRuleStatementUpdater implements RuleDefinit
             return;
         }
         Collection<String> currentRules = currentRuleConfig.getBroadcastTables();
-        Collection<String> notExistRules = sqlStatement.getRules().stream().filter(each -> !containsIgnoreCase(currentRules, each)).collect(Collectors.toList());
+        Collection<String> notExistRules = sqlStatement.getTables().stream().filter(each -> !containsIgnoreCase(currentRules, each)).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(notExistRules.isEmpty(), () -> new MissingRequiredRuleException("Broadcast", databaseName, notExistRules));
     }
     
@@ -62,12 +62,12 @@ public final class DropBroadcastTableRuleStatementUpdater implements RuleDefinit
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropBroadcastTableRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(currentRuleConfig.getBroadcastTables(), sqlStatement.getRules()).isEmpty();
+        return isExistRuleConfig(currentRuleConfig) && !getIdenticalData(currentRuleConfig.getBroadcastTables(), sqlStatement.getTables()).isEmpty();
     }
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropBroadcastTableRuleStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        currentRuleConfig.getBroadcastTables().removeIf(each -> containsIgnoreCase(sqlStatement.getRules(), each));
+        currentRuleConfig.getBroadcastTables().removeIf(each -> containsIgnoreCase(sqlStatement.getTables(), each));
         return false;
     }
     
diff --git a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
index c3e052c3f99..545bb464b7f 100644
--- a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
+++ b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAlgorithmStatementUpdater.java
@@ -59,7 +59,7 @@ public final class DropShardingAlgorithmStatementUpdater implements RuleDefiniti
             return;
         }
         Collection<String> currentShardingAlgorithms = getCurrentShardingAlgorithms(currentRuleConfig);
-        Collection<String> notExistedAlgorithms = sqlStatement.getAlgorithmNames().stream().filter(each -> !currentShardingAlgorithms.contains(each)).collect(Collectors.toList());
+        Collection<String> notExistedAlgorithms = sqlStatement.getNames().stream().filter(each -> !currentShardingAlgorithms.contains(each)).collect(Collectors.toList());
         if (!notExistedAlgorithms.isEmpty()) {
             throw new MissingRequiredAlgorithmException(databaseName, notExistedAlgorithms);
         }
@@ -68,7 +68,7 @@ public final class DropShardingAlgorithmStatementUpdater implements RuleDefiniti
     private void checkShardingAlgorithmsInUsed(final String databaseName, final DropShardingAlgorithmStatement sqlStatement,
                                                final ShardingRuleConfiguration currentRuleConfig) throws AlgorithmInUsedException {
         Collection<String> allInUsed = getAllOfAlgorithmsInUsed(currentRuleConfig);
-        Collection<String> usedAlgorithms = sqlStatement.getAlgorithmNames().stream().filter(allInUsed::contains).collect(Collectors.toList());
+        Collection<String> usedAlgorithms = sqlStatement.getNames().stream().filter(allInUsed::contains).collect(Collectors.toList());
         ShardingSpherePreconditions.checkState(usedAlgorithms.isEmpty(), () -> new AlgorithmInUsedException("Sharding", databaseName, usedAlgorithms));
     }
     
@@ -100,7 +100,7 @@ public final class DropShardingAlgorithmStatementUpdater implements RuleDefiniti
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropShardingAlgorithmStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        for (String each : sqlStatement.getAlgorithmNames()) {
+        for (String each : sqlStatement.getNames()) {
             dropShardingAlgorithm(currentRuleConfig, each);
         }
         return false;
@@ -108,7 +108,7 @@ public final class DropShardingAlgorithmStatementUpdater implements RuleDefiniti
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropShardingAlgorithmStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        return null != currentRuleConfig && !getIdenticalData(getCurrentShardingAlgorithms(currentRuleConfig), sqlStatement.getAlgorithmNames()).isEmpty();
+        return null != currentRuleConfig && !getIdenticalData(getCurrentShardingAlgorithms(currentRuleConfig), sqlStatement.getNames()).isEmpty();
     }
     
     private void dropShardingAlgorithm(final ShardingRuleConfiguration currentRuleConfig, final String algorithmName) {
diff --git a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAuditorStatementUpdater.java b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAuditorStatementUpdater.java
index 2c39017a58a..6b9617466be 100644
--- a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAuditorStatementUpdater.java
+++ b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingAuditorStatementUpdater.java
@@ -43,7 +43,7 @@ public final class DropShardingAuditorStatementUpdater implements RuleDefinition
             return;
         }
         String databaseName = database.getName();
-        Collection<String> auditorNames = new LinkedList<>(sqlStatement.getAuditorNames());
+        Collection<String> auditorNames = new LinkedList<>(sqlStatement.getNames());
         checkExist(databaseName, auditorNames, currentRuleConfig, sqlStatement);
         checkInUsed(databaseName, auditorNames, currentRuleConfig);
     }
@@ -75,13 +75,13 @@ public final class DropShardingAuditorStatementUpdater implements RuleDefinition
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropShardingAuditorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        currentRuleConfig.getAuditors().keySet().removeIf(sqlStatement.getAuditorNames()::contains);
+        currentRuleConfig.getAuditors().keySet().removeIf(sqlStatement.getNames()::contains);
         return false;
     }
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropShardingAuditorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        return null != currentRuleConfig && !getIdenticalData(currentRuleConfig.getAuditors().keySet(), sqlStatement.getAuditorNames()).isEmpty();
+        return null != currentRuleConfig && !getIdenticalData(currentRuleConfig.getAuditors().keySet(), sqlStatement.getNames()).isEmpty();
     }
     
     @Override
diff --git a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
index 653f87173a0..f77e996fd1f 100644
--- a/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
+++ b/features/sharding/distsql/handler/src/main/java/org/apache/shardingsphere/sharding/distsql/handler/update/DropShardingKeyGeneratorStatementUpdater.java
@@ -44,7 +44,7 @@ public final class DropShardingKeyGeneratorStatementUpdater implements RuleDefin
             return;
         }
         String databaseName = database.getName();
-        Collection<String> keyGeneratorNames = new LinkedList<>(sqlStatement.getKeyGeneratorNames());
+        Collection<String> keyGeneratorNames = new LinkedList<>(sqlStatement.getNames());
         checkExist(databaseName, keyGeneratorNames, currentRuleConfig, sqlStatement);
         checkInUsed(databaseName, keyGeneratorNames, currentRuleConfig);
     }
@@ -77,13 +77,13 @@ public final class DropShardingKeyGeneratorStatementUpdater implements RuleDefin
     
     @Override
     public boolean updateCurrentRuleConfiguration(final DropShardingKeyGeneratorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        currentRuleConfig.getKeyGenerators().keySet().removeIf(sqlStatement.getKeyGeneratorNames()::contains);
+        currentRuleConfig.getKeyGenerators().keySet().removeIf(sqlStatement.getNames()::contains);
         return false;
     }
     
     @Override
     public boolean hasAnyOneToBeDropped(final DropShardingKeyGeneratorStatement sqlStatement, final ShardingRuleConfiguration currentRuleConfig) {
-        return null != currentRuleConfig && !getIdenticalData(currentRuleConfig.getKeyGenerators().keySet(), sqlStatement.getKeyGeneratorNames()).isEmpty();
+        return null != currentRuleConfig && !getIdenticalData(currentRuleConfig.getKeyGenerators().keySet(), sqlStatement.getNames()).isEmpty();
     }
     
     @Override
diff --git a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropBroadcastTableRuleStatement.java b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropBroadcastTableRuleStatement.java
index e5cc3a16c31..0db65add3e1 100644
--- a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropBroadcastTableRuleStatement.java
+++ b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropBroadcastTableRuleStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropBroadcastTableRuleStatement extends DropRuleStatement {
     
-    private final Collection<String> rules;
+    private final Collection<String> tables;
     
-    public DropBroadcastTableRuleStatement(final boolean ifExists, final Collection<String> rules) {
+    public DropBroadcastTableRuleStatement(final boolean ifExists, final Collection<String> tables) {
         super(ifExists);
-        this.rules = rules;
+        this.tables = tables;
     }
 }
diff --git a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAlgorithmStatement.java b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAlgorithmStatement.java
index 9548f198841..c85a2d8066d 100644
--- a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAlgorithmStatement.java
+++ b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAlgorithmStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropShardingAlgorithmStatement extends DropRuleStatement {
     
-    private final Collection<String> algorithmNames;
+    private final Collection<String> names;
     
-    public DropShardingAlgorithmStatement(final boolean ifExists, final Collection<String> algorithmNames) {
+    public DropShardingAlgorithmStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.algorithmNames = algorithmNames;
+        this.names = names;
     }
 }
diff --git a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAuditorStatement.java b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAuditorStatement.java
index 7add2e3e539..a8845f48637 100644
--- a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAuditorStatement.java
+++ b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingAuditorStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropShardingAuditorStatement extends DropRuleStatement {
     
-    private final Collection<String> auditorNames;
+    private final Collection<String> names;
     
-    public DropShardingAuditorStatement(final boolean ifExists, final Collection<String> auditorNames) {
+    public DropShardingAuditorStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.auditorNames = auditorNames;
+        this.names = names;
     }
 }
diff --git a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingKeyGeneratorStatement.java b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingKeyGeneratorStatement.java
index 6b23fe60ccf..4219315fd88 100644
--- a/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingKeyGeneratorStatement.java
+++ b/features/sharding/distsql/statement/src/main/java/org/apache/shardingsphere/sharding/distsql/parser/statement/DropShardingKeyGeneratorStatement.java
@@ -28,10 +28,10 @@ import java.util.Collection;
 @Getter
 public final class DropShardingKeyGeneratorStatement extends DropRuleStatement {
     
-    private final Collection<String> keyGeneratorNames;
+    private final Collection<String> names;
     
-    public DropShardingKeyGeneratorStatement(final boolean ifExists, final Collection<String> keyGeneratorNames) {
+    public DropShardingKeyGeneratorStatement(final boolean ifExists, final Collection<String> names) {
         super(ifExists);
-        this.keyGeneratorNames = keyGeneratorNames;
+        this.names = names;
     }
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/ral/impl/updatable/DropTrafficRuleStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/ral/impl/updatable/DropTrafficRuleStatementAssert.java
index 4d8469a27ec..08e71335c30 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/ral/impl/updatable/DropTrafficRuleStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/ral/impl/updatable/DropTrafficRuleStatementAssert.java
@@ -48,7 +48,7 @@ public final class DropTrafficRuleStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("Rule name id assertion error"), new ArrayList<>(actual.getRuleNames()), is(new ArrayList<>(expected.getRuleNames())));
+            assertThat(assertContext.getText("Rule name id assertion error"), new ArrayList<>(actual.getRuleNames()), is(new ArrayList<>(expected.getNames())));
         }
     }
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropBroadcastTableRuleStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropBroadcastTableRuleStatementAssert.java
index 7e666805c7f..beee2f4fe2d 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropBroadcastTableRuleStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropBroadcastTableRuleStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropBroadcastTableRuleStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("broadcast table rule assertion error: "), actual.getRules(), is(expected.getTableName()));
+            assertThat(assertContext.getText("broadcast table rule assertion error: "), actual.getTables(), is(expected.getTables()));
             assertThat(assertContext.getText("broadcast table rule assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryHeartbeatStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryHeartbeatStatementAssert.java
index 101e217522a..8009c42fafe 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryHeartbeatStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryHeartbeatStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropDatabaseDiscoveryHeartbeatStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("database discovery heartbeat assertion error: "), actual.getHeartbeatNames(), is(expected.getHeartbeats()));
+            assertThat(assertContext.getText("database discovery heartbeat assertion error: "), actual.getNames(), is(expected.getHeartbeats()));
             assertThat(assertContext.getText("database discovery heartbeat assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryRuleStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryRuleStatementAssert.java
index 42d246f8088..7b0b91950ad 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryRuleStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropDatabaseDiscoveryRuleStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropDatabaseDiscoveryRuleStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("database discovery rule assertion error: "), actual.getRuleNames(), is(expected.getRules()));
+            assertThat(assertContext.getText("database discovery rule assertion error: "), actual.getNames(), is(expected.getNames()));
         }
     }
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropReadwriteSplittingRuleStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropReadwriteSplittingRuleStatementAssert.java
index 58978644fec..8d82bba4aa9 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropReadwriteSplittingRuleStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropReadwriteSplittingRuleStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropReadwriteSplittingRuleStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("readwrite splitting assertion error: "), actual.getRuleNames(), is(expected.getRules()));
+            assertThat(assertContext.getText("readwrite splitting assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("readwrite splitting assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowAlgorithmStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowAlgorithmStatementAssert.java
index 31f43bdef42..caa0c4f9324 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowAlgorithmStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowAlgorithmStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropShadowAlgorithmStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("Shadow rule assertion error: "), actual.getAlgorithmNames(), is(expected.getRuleName()));
+            assertThat(assertContext.getText("Shadow rule assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("Shadow rule assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowRuleStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowRuleStatementAssert.java
index c448ca6b8b0..c6c0ac75f1c 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowRuleStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShadowRuleStatementAssert.java
@@ -46,7 +46,7 @@ public final class DropShadowRuleStatementAssert {
             assertNull(assertContext.getText("Actual statement should not exist."), actual);
         } else {
             assertNotNull(assertContext.getText("Actual statement should exist."), actual);
-            assertThat(assertContext.getText("Shadow rule assertion error: "), actual.getRuleNames(), is(expected.getRules()));
+            assertThat(assertContext.getText("Shadow rule assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("Shadow rule assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAlgorithmStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAlgorithmStatementAssert.java
index a5924a7cbad..aa229928ece 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAlgorithmStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAlgorithmStatementAssert.java
@@ -41,10 +41,10 @@ public final class DropShardingAlgorithmStatementAssert {
      * @param expected expected drop sharding algorithm statement test case
      */
     public static void assertIs(final SQLCaseAssertContext assertContext, final DropShardingAlgorithmStatement actual, final DropShardingAlgorithmStatementTestCase expected) {
-        if (null == expected.getAlgorithms()) {
+        if (null == expected.getNames()) {
             assertNull(assertContext.getText("Actual algorithm should not exist."), actual);
         } else {
-            assertThat(assertContext.getText("Algorithm names assertion error: "), actual.getAlgorithmNames(), is(expected.getAlgorithms()));
+            assertThat(assertContext.getText("Algorithm names assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("Contains exist clause assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAuditorStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAuditorStatementAssert.java
index 6db2e31e8df..dc9392b9391 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAuditorStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingAuditorStatementAssert.java
@@ -41,10 +41,10 @@ public final class DropShardingAuditorStatementAssert {
      * @param expected expected drop sharding auditor statement test case
      */
     public static void assertIs(final SQLCaseAssertContext assertContext, final DropShardingAuditorStatement actual, final DropShardingAuditorStatementTestCase expected) {
-        if (null == expected.getAuditorName()) {
+        if (null == expected.getNames()) {
             assertNull(assertContext.getText("Actual auditor name should not exist."), actual);
         } else {
-            assertThat(assertContext.getText("Auditor names assertion error: "), actual.getAuditorNames(), is(expected.getAuditorName()));
+            assertThat(assertContext.getText("Auditor names assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("Contains exist clause assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingKeyGeneratorStatementAssert.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingKeyGeneratorStatementAssert.java
index 0b8302c23da..fcf13e3ec8c 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingKeyGeneratorStatementAssert.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/asserts/statement/rdl/drop/impl/DropShardingKeyGeneratorStatementAssert.java
@@ -41,10 +41,10 @@ public final class DropShardingKeyGeneratorStatementAssert {
      * @param expected expected drop sharding key generator statement test case
      */
     public static void assertIs(final SQLCaseAssertContext assertContext, final DropShardingKeyGeneratorStatement actual, final DropShardingKeyGeneratorStatementTestCase expected) {
-        if (null == expected.getKeyGeneratorName()) {
+        if (null == expected.getNames()) {
             assertNull(assertContext.getText("Actual key generator name should not exist."), actual);
         } else {
-            assertThat(assertContext.getText("Key generator names assertion error: "), actual.getKeyGeneratorNames(), is(expected.getKeyGeneratorName()));
+            assertThat(assertContext.getText("Key generator names assertion error: "), actual.getNames(), is(expected.getNames()));
             assertThat(assertContext.getText("Contains exist clause assertion error: "), actual.isIfExists(), is(expected.isIfExists()));
         }
     }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/ral/DropTrafficRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/ral/DropTrafficRuleStatementTestCase.java
index e13a7d2a900..37c2fe8ab28 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/ral/DropTrafficRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/ral/DropTrafficRuleStatementTestCase.java
@@ -22,6 +22,7 @@ import lombok.Setter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.SQLParserTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.Collection;
 
 /**
@@ -31,6 +32,7 @@ import java.util.Collection;
 @Setter
 public final class DropTrafficRuleStatementTestCase extends SQLParserTestCase {
     
-    @XmlElement(name = "rule-name")
-    private Collection<String> ruleNames;
+    @XmlElementWrapper
+    @XmlElement(name = "name")
+    private Collection<String> names;
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/dbdiscovery/DropDatabaseDiscoveryRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/dbdiscovery/DropDatabaseDiscoveryRuleStatementTestCase.java
index f9ae96d4150..1c836771637 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/dbdiscovery/DropDatabaseDiscoveryRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/dbdiscovery/DropDatabaseDiscoveryRuleStatementTestCase.java
@@ -35,8 +35,8 @@ import java.util.List;
 public final class DropDatabaseDiscoveryRuleStatementTestCase extends SQLParserTestCase {
     
     @XmlElementWrapper
-    @XmlElement(name = "rule")
-    private final List<String> rules = new LinkedList<>();
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
     
     @XmlAttribute(name = "if-exists")
     private boolean ifExists;
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/readwritesplitting/DropReadwriteSplittingRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/readwritesplitting/DropReadwriteSplittingRuleStatementTestCase.java
index f63381f7f4d..de1ea464cad 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/readwritesplitting/DropReadwriteSplittingRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/readwritesplitting/DropReadwriteSplittingRuleStatementTestCase.java
@@ -32,6 +32,6 @@ import java.util.List;
 public final class DropReadwriteSplittingRuleStatementTestCase extends DropRuleStatementTestCase {
     
     @XmlElementWrapper
-    @XmlElement(name = "rule")
-    private final List<String> rules = new LinkedList<>();
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowAlgorithmStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowAlgorithmStatementTestCase.java
index 94a4ee4eee3..d0b9efe0ce8 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowAlgorithmStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowAlgorithmStatementTestCase.java
@@ -38,6 +38,6 @@ public final class DropShadowAlgorithmStatementTestCase extends SQLParserTestCas
     private boolean ifExists;
     
     @XmlElementWrapper
-    @XmlElement(name = "rule")
-    private final List<String> ruleName = new LinkedList<>();
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowRuleStatementTestCase.java
index d1f400f4f55..2d53bd9271c 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/shadow/DropShadowRuleStatementTestCase.java
@@ -37,7 +37,7 @@ public final class DropShadowRuleStatementTestCase extends SQLParserTestCase {
     @XmlAttribute(name = "if-exists")
     private boolean ifExists;
     
-    @XmlElementWrapper(name = "rules")
-    @XmlElement(name = "rule")
-    private final List<String> rules = new LinkedList<>();
+    @XmlElementWrapper
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropBroadcastTableRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropBroadcastTableRuleStatementTestCase.java
index 956eb175430..76c6b30e367 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropBroadcastTableRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropBroadcastTableRuleStatementTestCase.java
@@ -21,6 +21,7 @@ import lombok.Getter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.DropRuleStatementTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -30,6 +31,7 @@ import java.util.List;
 @Getter
 public final class DropBroadcastTableRuleStatementTestCase extends DropRuleStatementTestCase {
     
+    @XmlElementWrapper
     @XmlElement(name = "table")
-    private final List<String> tableName = new LinkedList<>();
+    private final List<String> tables = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAlgorithmStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAlgorithmStatementTestCase.java
index 584d9c134fa..ce326ae840a 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAlgorithmStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAlgorithmStatementTestCase.java
@@ -18,20 +18,20 @@
 package org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.rdl.rule.sharding;
 
 import lombok.Getter;
-import lombok.Setter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.DropRuleStatementTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.LinkedList;
 import java.util.List;
 
 /**
  * Drop sharding algorithm statement test case.
  */
-@Setter
 @Getter
 public final class DropShardingAlgorithmStatementTestCase extends DropRuleStatementTestCase {
     
-    @XmlElement(name = "algorithm")
-    private final List<String> algorithms = new LinkedList<>();
+    @XmlElementWrapper
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAuditorStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAuditorStatementTestCase.java
index ea1314ba615..07ef97b6168 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAuditorStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingAuditorStatementTestCase.java
@@ -21,6 +21,7 @@ import lombok.Getter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.DropRuleStatementTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -30,6 +31,7 @@ import java.util.List;
 @Getter
 public final class DropShardingAuditorStatementTestCase extends DropRuleStatementTestCase {
     
-    @XmlElement(name = "auditor")
-    private final List<String> auditorName = new LinkedList<>();
+    @XmlElementWrapper
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingKeyGeneratorStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingKeyGeneratorStatementTestCase.java
index f19b2dc712a..a41f0906d7d 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingKeyGeneratorStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingKeyGeneratorStatementTestCase.java
@@ -21,6 +21,7 @@ import lombok.Getter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.DropRuleStatementTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -30,6 +31,7 @@ import java.util.List;
 @Getter
 public final class DropShardingKeyGeneratorStatementTestCase extends DropRuleStatementTestCase {
     
-    @XmlElement(name = "key-generator")
-    private final List<String> keyGeneratorName = new LinkedList<>();
+    @XmlElementWrapper
+    @XmlElement(name = "name")
+    private final List<String> names = new LinkedList<>();
 }
diff --git a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingTableRuleStatementTestCase.java b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingTableRuleStatementTestCase.java
index 186c9d27e92..fe32aba46cf 100644
--- a/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingTableRuleStatementTestCase.java
+++ b/test/parser/src/main/java/org/apache/shardingsphere/test/sql/parser/internal/cases/parser/domain/statement/rdl/rule/sharding/DropShardingTableRuleStatementTestCase.java
@@ -21,6 +21,7 @@ import lombok.Getter;
 import org.apache.shardingsphere.test.sql.parser.internal.cases.parser.domain.statement.DropRuleStatementTestCase;
 
 import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlElementWrapper;
 import java.util.LinkedList;
 import java.util.List;
 
@@ -30,6 +31,7 @@ import java.util.List;
 @Getter
 public final class DropShardingTableRuleStatementTestCase extends DropRuleStatementTestCase {
     
+    @XmlElementWrapper
     @XmlElement(name = "table")
     private final List<String> tables = new LinkedList<>();
 }
diff --git a/test/parser/src/main/resources/case/ral/updatable.xml b/test/parser/src/main/resources/case/ral/updatable.xml
index ae4618567f4..2fd92ee06c6 100644
--- a/test/parser/src/main/resources/case/ral/updatable.xml
+++ b/test/parser/src/main/resources/case/ral/updatable.xml
@@ -71,7 +71,9 @@
     </alter-traffic-rule>
     
     <drop-traffic-rule sql-case-id="drop-traffic-rule">
-        <rule-name>rule_name</rule-name>
+        <names>
+            <name>rule_name</name>
+        </names>
     </drop-traffic-rule>
     
     <alter-compute-node sql-case-id="alter-compute-node-xa-recovery-nodes" instance-id="instance_xa_recovery" key="XA_RECOVERY_NODES" value="instance_1" />
diff --git a/test/parser/src/main/resources/case/rdl/drop.xml b/test/parser/src/main/resources/case/rdl/drop.xml
index 1fe227daeb1..930837d5029 100644
--- a/test/parser/src/main/resources/case/rdl/drop.xml
+++ b/test/parser/src/main/resources/case/rdl/drop.xml
@@ -22,7 +22,7 @@
         <data-source>ds_1</data-source>
         <ignore-single-tables>false</ignore-single-tables>
     </unregister-storage-unit>
-
+    
     <unregister-storage-unit sql-case-id="unregister-storage-unit-if-exists" if-exists="true">
         <data-source>ds_0</data-source>
         <data-source>ds_1</data-source>
@@ -36,13 +36,17 @@
     </unregister-storage-unit>
     
     <drop-sharding-table-rule sql-case-id="drop-sharding-table-rule" >
-        <table>t_order</table>
-        <table>t_order_item</table>
+        <tables>
+            <table>t_order</table>
+            <table>t_order_item</table>
+        </tables>
     </drop-sharding-table-rule>
     
     <drop-sharding-table-rule sql-case-id="drop-sharding-table-rule-if-exists" if-exists="true">
-        <table>t_order</table>
-        <table>t_order_item</table>
+        <tables>
+            <table>t_order</table>
+            <table>t_order_item</table>
+        </tables>
     </drop-sharding-table-rule>
     
     <drop-sharding-table-reference-rule sql-case-id="drop-sharding-table-reference-rule">
@@ -50,7 +54,7 @@
             <rule>t_1,t_2</rule>
         </rules>
     </drop-sharding-table-reference-rule>
-
+    
     <drop-sharding-table-reference-rule sql-case-id="drop-sharding-table-reference-rule-if-exists" if-exists="true">
         <rules>
             <rule>t_1,t_2</rule>
@@ -58,46 +62,52 @@
     </drop-sharding-table-reference-rule>
     
     <drop-broadcast-table-rule sql-case-id="drop-broadcast-table-rule" >
-        <table>t_1</table>
+        <tables>
+            <table>t_1</table>
+        </tables>
     </drop-broadcast-table-rule>
-
+    
     <drop-broadcast-table-rule sql-case-id="drop-multiple-broadcast-table-rules" >
-        <table>t_1</table>
-        <table>t_2</table>
+        <tables>
+            <table>t_1</table>
+            <table>t_2</table>
+        </tables>
     </drop-broadcast-table-rule>
-
+    
     <drop-broadcast-table-rule sql-case-id="drop-broadcast-table-rule-if-exists" if-exists="true">
-        <table>t_1</table>
+        <tables>
+            <table>t_1</table>
+        </tables>
     </drop-broadcast-table-rule>
-
+    
     <drop-readwrite-splitting-rule sql-case-id="drop-readwrite-splitting-rule">
-        <rules>
-            <rule>ms_group_0</rule>
-            <rule>ms_group_1</rule>
-        </rules>
+        <names>
+            <name>ms_group_0</name>
+            <name>ms_group_1</name>
+        </names>
     </drop-readwrite-splitting-rule>
 
     <drop-readwrite-splitting-rule sql-case-id="drop-readwrite-splitting-rule-if-exists" if-exists="true">
-        <rules>
-            <rule>ms_group_0</rule>
-            <rule>ms_group_1</rule>
-        </rules>
+        <names>
+            <name>ms_group_0</name>
+            <name>ms_group_1</name>
+        </names>
     </drop-readwrite-splitting-rule>
     
     <drop-database-discovery-rule sql-case-id="drop-database-discovery-rule">
-        <rules>
-            <rule>ha_group_0</rule>
-            <rule>ha_group_1</rule>
-        </rules>
+        <names>
+            <name>ha_group_0</name>
+            <name>ha_group_1</name>
+        </names>
     </drop-database-discovery-rule>
     
     <drop-database-discovery-rule sql-case-id="drop-database-discovery-rule-if-exists" if-exists="true">
-        <rules>
-            <rule>ha_group_0</rule>
-            <rule>ha_group_1</rule>
-        </rules>
+        <names>
+            <name>ha_group_0</name>
+            <name>ha_group_1</name>
+        </names>
     </drop-database-discovery-rule>
-
+    
     <drop-database-discovery-type sql-case-id="drop-database-discovery-type">
         <type>type_name_0</type>
         <type>type_name_1</type>
@@ -107,7 +117,7 @@
         <type>type_name_0</type>
         <type>type_name_1</type>
     </drop-database-discovery-type>
-
+    
     <drop-database-discovery-heartbeat sql-case-id="drop-database-discovery-heartbeat">
         <heartbeat>heartbeat_name_0</heartbeat>
         <heartbeat>heartbeat_name_1</heartbeat>
@@ -122,63 +132,73 @@
         <table>t_encrypt</table>
         <table>t_encrypt_order</table>
     </drop-encrypt-rule>
-
+    
     <drop-encrypt-rule sql-case-id="drop-encrypt-rule-if-exists" if-exists="true">
         <table>t_encrypt</table>
         <table>t_encrypt_order</table>
     </drop-encrypt-rule>
     
     <drop-shadow-rule sql-case-id="drop-shadow-rule">
-        <rules>
-            <rule>shadow_rule_1</rule>
-            <rule>shadow_rule_2</rule>
-        </rules>
+        <names>
+            <name>shadow_rule_1</name>
+            <name>shadow_rule_2</name>
+        </names>
     </drop-shadow-rule>
     
     <drop-shadow-rule sql-case-id="drop-shadow-rule-if-exists" if-exists="true">
-        <rules>
-            <rule>shadow_rule_1</rule>
-            <rule>shadow_rule_2</rule>
-        </rules>
+        <names>
+            <name>shadow_rule_1</name>
+            <name>shadow_rule_2</name>
+        </names>
     </drop-shadow-rule>
-
+    
     <drop-shadow-algorithm sql-case-id="drop-shadow-algorithm">
-        <rules>
-            <rule>shadow_algorithm_1</rule>
-            <rule>shadow_algorithm_2</rule>
-        </rules>
+        <names>
+            <name>shadow_algorithm_1</name>
+            <name>shadow_algorithm_2</name>
+        </names>
     </drop-shadow-algorithm>
-
+    
     <drop-shadow-algorithm sql-case-id="drop-shadow-algorithm-if-exists" if-exists="true">
-        <rules>
-            <rule>shadow_algorithm_1</rule>
-            <rule>shadow_algorithm_2</rule>
-        </rules>
+        <names>
+            <name>shadow_algorithm_1</name>
+            <name>shadow_algorithm_2</name>
+        </names>
     </drop-shadow-algorithm>
-
-    <drop-shadow-algorithm sql-case-id="drop-default-shadow-algorithm-if-exists" if-exists="true"/>
+    
+    <drop-shadow-algorithm sql-case-id="drop-default-shadow-algorithm-if-exists" if-exists="true" />
     
     <drop-sharding-key-generator sql-case-id="drop-sharding-key-generator" >
-        <key-generator>uuid_key_generator</key-generator>
+        <names>
+            <name>uuid_key_generator</name>
+        </names>
     </drop-sharding-key-generator>
-
+    
     <drop-sharding-key-generator sql-case-id="drop-sharding-key-generator-if-exists" if-exists="true">
-        <key-generator>uuid_key_generator</key-generator>
+        <names>
+            <name>uuid_key_generator</name>
+        </names>
     </drop-sharding-key-generator>
-
+    
     <drop-sharding-auditor sql-case-id="drop-sharding-auditor" >
-        <auditor>sharding_key_required_auditor</auditor>
+        <names>
+            <name>sharding_key_required_auditor</name>
+        </names>
     </drop-sharding-auditor>
-
+    
     <drop-sharding-auditor sql-case-id="drop-sharding-auditor-if-exists" if-exists="true">
-        <auditor>sharding_key_required_auditor</auditor>
+        <names>
+            <name>sharding_key_required_auditor</name>
+        </names>
     </drop-sharding-auditor>
-
+    
     <drop-default-sharding-strategy sql-case-id="drop-default-sharding-strategy" type="table"/>
     
     <drop-default-sharding-strategy sql-case-id="drop-default-sharding-strategy-if-exists" type="table" if-exists="true"/>
     
     <drop-sharding-algorithm sql-case-id="drop-sharding-algorithm" if-exists="true">
-        <algorithm>t_order_hash_mod</algorithm>
+        <names>
+            <name>t_order_hash_mod</name>
+        </names>
     </drop-sharding-algorithm>
 </sql-parser-test-cases>