diff --git a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/mysql/MySQLDropParser.java b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/mysql/MySQLDropParser.java index 1a22572163654c2e57021cc8214269fa8d950d7b..d8ecf121dc61c4d592cc0e36490b8ebd7f9db92e 100644 --- a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/mysql/MySQLDropParser.java +++ b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/mysql/MySQLDropParser.java @@ -34,12 +34,12 @@ public final class MySQLDropParser extends AbstractDropParser { } @Override - protected Keyword[] getSkipWordsBetweenDropAndTable() { + protected Keyword[] getSkipKeywordsBetweenDropAndTable() { return new Keyword[] {DefaultKeyword.TEMPORARY}; } @Override - protected Keyword[] getSkipWordsBetweenKeywordAndTableName() { + protected Keyword[] getSkipKeywordsBetweenDropTableAndTableName() { return new Keyword[] {DefaultKeyword.IF, DefaultKeyword.EXISTS}; } } diff --git a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/oracle/OracleDropParser.java b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/oracle/OracleDropParser.java index b810e6fe35cb57ef0634c9e4918f5a4c9e510a63..6d2a12ca3f9b74d843537baea973901d478829e3 100644 --- a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/oracle/OracleDropParser.java +++ b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/oracle/OracleDropParser.java @@ -33,7 +33,7 @@ public final class OracleDropParser extends AbstractDropParser { } @Override - protected Keyword[] getSkipWordsBetweenKeywordAndTableName() { + protected Keyword[] getSkipKeywordsBetweenDropTableAndTableName() { return new Keyword[] {}; } } diff --git a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/postgresql/PostgreSQLDropParser.java b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/postgresql/PostgreSQLDropParser.java index c3376d31ff9eb9c455497277f3fdcd3e5fc5812a..bf4c8827fc5e35837e4c31b4f3e1de1bf1bc8094 100644 --- a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/postgresql/PostgreSQLDropParser.java +++ b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/postgresql/PostgreSQLDropParser.java @@ -34,7 +34,7 @@ public final class PostgreSQLDropParser extends AbstractDropParser { } @Override - protected Keyword[] getSkipWordsBetweenKeywordAndTableName() { + protected Keyword[] getSkipKeywordsBetweenDropTableAndTableName() { return new Keyword[] {DefaultKeyword.IF, DefaultKeyword.EXISTS}; } } diff --git a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/sqlserver/SQLServerDropParser.java b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/sqlserver/SQLServerDropParser.java index c956c8f55d2d2202b84f4f5b7a605b5e21a7a90d..1f95cb7d87031f8ab52f4f0de0f114b3fe7cdb7a 100644 --- a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/sqlserver/SQLServerDropParser.java +++ b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/dialect/sqlserver/SQLServerDropParser.java @@ -34,7 +34,7 @@ public final class SQLServerDropParser extends AbstractDropParser { } @Override - protected Keyword[] getSkipWordsBetweenKeywordAndTableName() { + protected Keyword[] getSkipKeywordsBetweenDropTableAndTableName() { return new Keyword[] {DefaultKeyword.IF, DefaultKeyword.EXISTS}; } } diff --git a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/statement/ddl/drop/AbstractDropParser.java b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/statement/ddl/drop/AbstractDropParser.java index 5c1739120ae11a513a7cca19dbc33db58a73593b..6138c2240e7a1f14db65d2e5f4749c8e5b9a2cfe 100644 --- a/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/statement/ddl/drop/AbstractDropParser.java +++ b/sharding-jdbc-core/src/main/java/com/dangdang/ddframe/rdb/sharding/parsing/parser/statement/ddl/drop/AbstractDropParser.java @@ -48,18 +48,18 @@ public abstract class AbstractDropParser implements SQLStatementParser { @Override public DDLStatement parse() { sqlParser.getLexer().nextToken(); - getSqlParser().skipAll(getSkipWordsBetweenDropAndTable()); + getSqlParser().skipAll(getSkipKeywordsBetweenDropAndTable()); if (!sqlParser.skipIfEqual(DefaultKeyword.TABLE)) { throw new SQLParsingUnsupportedException(sqlParser.getLexer().getCurrentToken().getType()); } - getSqlParser().skipAll(getSkipWordsBetweenKeywordAndTableName()); + getSqlParser().skipAll(getSkipKeywordsBetweenDropTableAndTableName()); sqlParser.parseSingleTable(dropStatement); return dropStatement; } - protected Keyword[] getSkipWordsBetweenDropAndTable() { + protected Keyword[] getSkipKeywordsBetweenDropAndTable() { return new Keyword[0]; } - protected abstract Keyword[] getSkipWordsBetweenKeywordAndTableName(); + protected abstract Keyword[] getSkipKeywordsBetweenDropTableAndTableName(); }