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 b209a658a43 Add PostgreSQL Create Group Statement (#19881)
b209a658a43 is described below
commit b209a658a439875cca19ae6cbb0afc3f3fc6e172
Author: Thanoshan MV <[email protected]>
AuthorDate: Fri Aug 5 06:48:22 2022 +0530
Add PostgreSQL Create Group Statement (#19881)
---
.../main/antlr4/imports/postgresql/DCLStatement.g4 | 4 ++
.../antlr4/imports/postgresql/PostgreSQLKeyword.g4 | 52 ++++++++++++++++++++++
.../parser/autogen/PostgreSQLStatementParser.g4 | 1 +
.../impl/PostgreSQLDCLStatementSQLVisitor.java | 11 ++++-
.../core/database/visitor/SQLVisitorRule.java | 4 +-
.../common/statement/dcl/CreateGroupStatement.java | 28 ++++++++++++
.../dcl/PostgreSQLCreateGroupStatement.java | 29 ++++++++++++
.../jaxb/cases/domain/SQLParserTestCases.java | 6 ++-
.../dcl/CreateGroupStatementTestCase.java | 26 +++++++++++
.../src/main/resources/case/dcl/create-group.xml | 23 ++++++++++
.../resources/sql/supported/dcl/create-group.xml | 23 ++++++++++
.../main/resources/sql/unsupported/unsupported.xml | 4 --
12 files changed, 203 insertions(+), 8 deletions(-)
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/DCLStatement.g4
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/DCLStatement.g4
index de01dca2e95..c261df598a1 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/DCLStatement.g4
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/DCLStatement.g4
@@ -56,6 +56,10 @@ alterOptRoleElem
| VALID UNTIL STRING_
| USER roleList
| identifier
+ | SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB
+ | CREATEROLE | NOCREATEROLE | INHERIT | NOINHERIT
+ | LOGIN | NOLOGIN | REPLICATION | NOREPLICATION
+ | BYPASSRLS | NOBYPASSRLS
;
dropUser
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/PostgreSQLKeyword.g4
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/PostgreSQLKeyword.g4
index a4cec347e6d..da9d97b9af8 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/PostgreSQLKeyword.g4
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/imports/postgresql/PostgreSQLKeyword.g4
@@ -1404,3 +1404,55 @@ FORCE_NOT_NULL
FORCE_NULL
: F O R C E UL_ N U L L
;
+
+SUPERUSER
+ : S U P E R U S E R
+ ;
+
+NOSUPERUSER
+ : N O S U P E R U S E R
+ ;
+
+CREATEDB
+ : C R E A T E D B
+ ;
+
+NOCREATEDB
+ : N O C R E A T E D B
+ ;
+
+CREATEROLE
+ : C R E A T E R O L E
+ ;
+
+NOCREATEROLE
+ : N O C R E A T E R O L E
+ ;
+
+NOINHERIT
+ : N O I N H E R I T
+ ;
+
+LOGIN
+ : L O G I N
+ ;
+
+NOLOGIN
+ : N O L O G I N
+ ;
+
+REPLICATION
+ : R E P L I C A T I O N
+ ;
+
+NOREPLICATION
+ : N O R E P L I C A T I O N
+ ;
+
+BYPASSRLS
+ : B Y P A S S R L S
+ ;
+
+NOBYPASSRLS
+ : N O B Y P A S S R L S
+ ;
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/PostgreSQLStatementParser.g4
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/PostgreSQLStatementParser.g4
index eece098dcbc..8214c217653 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/PostgreSQLStatementParser.g4
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/PostgreSQLStatementParser.g4
@@ -171,5 +171,6 @@ execute
| createForeignDataWrapper
| createForeignTable
| alterStatistics
+ | createGroup
) SEMI_? EOF
;
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/impl/PostgreSQLDCLStatementSQLVisitor.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/impl/PostgreSQLDCLStatementSQLVisitor.java
index 4c5f3d53d49..7bbb9f166a7 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/impl/PostgreSQLDCLStatementSQLVisitor.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-postgresql/src/main/java/org/apache/shardingsphere/sql/parser/postgresql/visitor/statement/impl/PostgreSQLDCLStatementSQLVisitor.java
@@ -18,23 +18,25 @@
package org.apache.shardingsphere.sql.parser.postgresql.visitor.statement.impl;
import lombok.NoArgsConstructor;
-import
org.apache.shardingsphere.sql.parser.api.visitor.operation.SQLStatementVisitor;
import org.apache.shardingsphere.sql.parser.api.visitor.ASTNode;
+import
org.apache.shardingsphere.sql.parser.api.visitor.operation.SQLStatementVisitor;
import org.apache.shardingsphere.sql.parser.api.visitor.type.DCLSQLVisitor;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.AlterRoleContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.AlterUserContext;
+import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.CreateGroupContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.CreateRoleContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.CreateUserContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.DropRoleContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.DropUserContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.GrantContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.PrivilegeClauseContext;
-import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.RevokeContext;
import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.ReassignOwnedContext;
+import
org.apache.shardingsphere.sql.parser.autogen.PostgreSQLStatementParser.RevokeContext;
import
org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
import
org.apache.shardingsphere.sql.parser.sql.common.value.collection.CollectionValue;
import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLAlterRoleStatement;
import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLAlterUserStatement;
+import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLCreateGroupStatement;
import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLCreateRoleStatement;
import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLCreateUserStatement;
import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl.PostgreSQLDropRoleStatement;
@@ -117,4 +119,9 @@ public final class PostgreSQLDCLStatementSQLVisitor extends
PostgreSQLStatementS
public ASTNode visitReassignOwned(final ReassignOwnedContext ctx) {
return new PostgreSQLReassignOwnedStatement();
}
+
+ @Override
+ public ASTNode visitCreateGroup(final CreateGroupContext ctx) {
+ return new PostgreSQLCreateGroupStatement();
+ }
}
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/main/java/org/apache/shardingsphere/sql/parser/core/database/visitor/SQLVisitorRule.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/main/java/org/apache/shardingsphere/sql/parser/core/database/visitor/SQLVisitorRule.java
index d09da03a6c1..4eecd3de17d 100644
---
a/shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/main/java/org/apache/shardingsphere/sql/parser/core/database/visitor/SQLVisitorRule.java
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-engine/src/main/java/org/apache/shardingsphere/sql/parser/core/database/visitor/SQLVisitorRule.java
@@ -628,7 +628,9 @@ public enum SQLVisitorRule {
CREATE_FOREIGN_DATA_WRAPPER("CreateForeignDataWrapper",
SQLStatementType.DDL),
- CREATE_FOREIGN_TABLE("CreateForeignTable", SQLStatementType.DDL);
+ CREATE_FOREIGN_TABLE("CreateForeignTable", SQLStatementType.DDL),
+
+ CREATE_GROUP("CreateGroup", SQLStatementType.DCL);
private final String name;
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/CreateGroupStatement.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/CreateGroupStatement.java
new file mode 100644
index 00000000000..39431b4332f
--- /dev/null
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/CreateGroupStatement.java
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dcl;
+
+import lombok.ToString;
+import
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
+
+/**
+ * Create group statement.
+ */
+@ToString(callSuper = true)
+public abstract class CreateGroupStatement extends AbstractSQLStatement
implements DCLStatement {
+}
diff --git
a/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/postgresql/dcl/PostgreSQLCreateGroupStatement.java
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/postgresql/dcl/PostgreSQLCreateGroupStatement.java
new file mode 100644
index 00000000000..ee50c8766e9
--- /dev/null
+++
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/postgresql/dcl/PostgreSQLCreateGroupStatement.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.dcl;
+
+import lombok.ToString;
+import
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.CreateGroupStatement;
+import
org.apache.shardingsphere.sql.parser.sql.dialect.statement.postgresql.PostgreSQLStatement;
+
+/**
+ * PostgreSQL create group statement.
+ */
+@ToString(callSuper = true)
+public final class PostgreSQLCreateGroupStatement extends CreateGroupStatement
implements PostgreSQLStatement {
+}
diff --git
a/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
index 83302ddc9aa..efd7375c9f7 100644
---
a/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
+++
b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
@@ -77,6 +77,7 @@ import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.AlterLoginStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.AlterRoleStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.AlterUserStatementTestCase;
+import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.CreateGroupStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.CreateLoginStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.CreateRoleStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.CreateUserStatementTestCase;
@@ -121,8 +122,8 @@ import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterJavaStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterLanguageStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterLibraryStatementTestCase;
-import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterMaterializedViewLogStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterLockdownProfileStatementTestCase;
+import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterMaterializedViewLogStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterMaterializedViewStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterMaterializedZonemapStatementTestCase;
import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.ddl.AlterOperatorStatementTestCase;
@@ -1643,6 +1644,9 @@ public final class SQLParserTestCases {
@XmlElement(name = "show-mode-info")
private final List<ShowModeInfoStatementTestCase>
showModeInfoStatementTestCases = new LinkedList<>();
+ @XmlElement(name = "create-group")
+ private final List<CreateGroupStatementTestCase>
createGroupStatementTestCases = new LinkedList<>();
+
/**
* Get all SQL parser test cases.
*
diff --git
a/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/statement/dcl/CreateGroupStatementTestCase.java
b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/statement/dcl/CreateGroupStatementTestCase.java
new file mode 100644
index 00000000000..21e7a4fc9e8
--- /dev/null
+++
b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/statement/dcl/CreateGroupStatementTestCase.java
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl;
+
+import
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.SQLParserTestCase;
+
+/**
+ * Create group statement test case.
+ */
+public final class CreateGroupStatementTestCase extends SQLParserTestCase {
+}
diff --git
a/shardingsphere-test/shardingsphere-parser-test/src/main/resources/case/dcl/create-group.xml
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/case/dcl/create-group.xml
new file mode 100644
index 00000000000..ba2cc92093a
--- /dev/null
+++
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/case/dcl/create-group.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<sql-parser-test-cases>
+ <create-group sql-case-id="create_group" />
+ <create-group sql-case-id="create_group_with_user" />
+ <create-group sql-case-id="create_group_with_user_encrypted_password" />
+</sql-parser-test-cases>
diff --git
a/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/supported/dcl/create-group.xml
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/supported/dcl/create-group.xml
new file mode 100644
index 00000000000..dd5ed4d7853
--- /dev/null
+++
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/supported/dcl/create-group.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<sql-cases>
+ <sql-case id="create_group" value="CREATE GROUP regress_dep_group;"
db-types="PostgreSQL" />
+ <sql-case id="create_group_with_user" value="CREATE GROUP
regress_priv_group2 WITH USER regress_priv_user1, regress_priv_user2;"
db-types="PostgreSQL" />
+ <sql-case id="create_group_with_user_encrypted_password" value="CREATE
GROUP gp2 WITH USER U4 ENCRYPTED PASSWORD 'gp2'" db-types="PostgreSQL" />
+</sql-cases>
diff --git
a/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml
index c92f7a88403..6d16189b625 100644
---
a/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml
+++
b/shardingsphere-test/shardingsphere-parser-test/src/main/resources/sql/unsupported/unsupported.xml
@@ -3543,10 +3543,6 @@
<sql-case id="create_by_postgresql_source_test_case290" value="CREATE
FUNCTION voidtest4(a int) RETURNS VOID LANGUAGE SQL AS $$ INSERT INTO sometable
VALUES(a - 1) RETURNING f1 $$;" db-types="PostgreSQL" />
<sql-case id="create_by_postgresql_source_test_case291" value="CREATE
FUNCTION voidtest5(a int) RETURNS SETOF VOID LANGUAGE SQL AS $$ SELECT
generate_series(1, a) $$ STABLE;" db-types="PostgreSQL" />
<sql-case id="create_by_postgresql_source_test_case292" value="CREATE
FUNCTION y_trigger() RETURNS trigger AS $$ begin raise notice
'y_trigger: a = %', new.a; return new; end; $$ LANGUAGE plpgsql;"
db-types="PostgreSQL" />
- <sql-case id="create_by_postgresql_source_test_case293" value="CREATE
GROUP regress_dep_group;" db-types="PostgreSQL" />
- <sql-case id="create_by_postgresql_source_test_case294" value="CREATE
GROUP regress_priv_group1;" db-types="PostgreSQL" />
- <sql-case id="create_by_postgresql_source_test_case295" value="CREATE
GROUP regress_priv_group2 WITH USER regress_priv_user1, regress_priv_user2;"
db-types="PostgreSQL" />
- <sql-case id="create_by_postgresql_source_test_case296" value="CREATE
GROUP regress_test_g1;" db-types="PostgreSQL" />
<sql-case id="create_by_postgresql_source_test_case297" value="CREATE
INDEX IF NOT EXISTS ON onek USING btree(unique1 int4_ops);"
db-types="PostgreSQL" />
<sql-case id="create_by_postgresql_source_test_case298" value="CREATE
INDEX brinidx_bloom ON brintest_bloom USING brin ( byteacol
bytea_bloom_ops(n_distinct_per_range = -1.1) );" db-types="PostgreSQL" />
<sql-case id="create_by_postgresql_source_test_case299" value="CREATE
MATERIALIZED VIEW IF NOT EXISTS matview_ine_tab AS SELECT 1 / CREATE
MATERIALIZED VIEW matview_ine_tab AS SELECT 1 / 0 WITH NO DAT CREATE
MATERIALIZED VIEW IF NOT EXISTS matview_ine_tab AS SELECT 1 / 0 WITH NO DAT
EXPLAIN (ANALYZE, COSTS OFF, SUMMARY OFF, TIMING OFF) CREATE MATERIALIZED
VIEW matview_ine_tab AS SELECT 1 EXPLAIN (ANALYZE, COSTS OFF, SUMMARY OFF,
TIMING OFF) CREATE MATERIALIZED VIEW IF [...]