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

panjuan 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 bf5fa85  [SQL Definition Collation][Oracle]Collate the SQL definition 
of SET ROLE (#9603)
bf5fa85 is described below

commit bf5fa85aad7b361e83b2e9c505ea67dc90cd54e6
Author: Liangda-w <[email protected]>
AuthorDate: Thu Mar 11 07:51:09 2021 +0100

    [SQL Definition Collation][Oracle]Collate the SQL definition of SET ROLE 
(#9603)
    
    * [SQL Definition Collation][Oracle]Collate the SQL definition of SET ROLE
    
    * add sql case and relevant files
    
    * add new line at the end
    
    * add more sql cases
    
    * specify password grammar
    
    * specify password grammar
    
    * update IDENTIFIER_
---
 .../src/main/antlr4/imports/oracle/BaseRule.g4     |  8 +++++
 .../src/main/antlr4/imports/oracle/DCLStatement.g4 | 12 +++++++
 .../src/main/antlr4/imports/oracle/Literals.g4     |  2 +-
 .../main/antlr4/imports/oracle/OracleKeyword.g4    |  4 +++
 .../src/main/antlr4/imports/oracle/Symbol.g4       |  1 +
 .../sql/parser/autogen/OracleStatement.g4          |  1 +
 .../impl/OracleDCLStatementSQLVisitor.java         |  7 ++++
 .../common/statement/dcl/SetRoleStatement.java}    | 38 ++++----------------
 .../oracle/dcl/OracleSetRoleStatement.java}        | 41 ++++++----------------
 .../asserts/statement/dcl/DCLStatementAssert.java  |  6 ++--
 .../statement/dcl/impl/SetRoleStatementAssert.java |  4 +--
 .../src/main/resources/case/dcl/set-role.xml       |  2 ++
 .../main/resources/sql/supported/dcl/set-role.xml  | 14 ++++----
 13 files changed, 66 insertions(+), 74 deletions(-)

diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
index 459ed3e..b91eb6b 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4
@@ -139,6 +139,14 @@ name
     : identifier
     ;
 
+roleName
+    : identifier
+    ;
+
+password
+    : identifier
+    ;
+
 columnNames
     : LP_? columnName (COMMA_ columnName)* RP_?
     ;
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DCLStatement.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DCLStatement.g4
index c01b511..f0416b1 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DCLStatement.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DCLStatement.g4
@@ -321,3 +321,15 @@ dropRole
 alterRole
     : ALTER ROLE
     ;
+
+setRole
+    : SET ROLE (roleAssignment | allClause | NONE)
+    ;
+
+roleAssignment
+    : roleName (IDENTIFIED BY password)? (COMMA_ roleName (IDENTIFIED BY 
password)? )*
+    ;
+
+allClause
+    : ALL (EXCEPT roleName (COMMA_ roleName)*)?
+    ;
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
index bba78cb..9da6e08 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
@@ -20,7 +20,7 @@ lexer grammar Literals;
 import Alphabet, Symbol;
 
 IDENTIFIER_
-    : [A-Za-z_$0-9]*?[A-Za-z_$]+?[A-Za-z_$0-9]*
+    : [A-Za-z]+[A-Za-z_$#0-9]*
     |  DQ_ ~'"'+ DQ_
     ;
 
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
index e11b0ad..2354c8b 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/OracleKeyword.g4
@@ -231,6 +231,10 @@ END
     : E N D
     ;
 
+EXCEPT
+    : E X C E P T
+    ;
+
 EXCEPTIONS
     : E X C E P T I O N S
     ;
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Symbol.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Symbol.g4
index da742da..5a0d8f3 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Symbol.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Symbol.g4
@@ -57,3 +57,4 @@ BQ_:                 '`';
 QUESTION_:           '?';
 AT_:                 '@';
 SEMI_:               ';';
+DOLLAR_:             '$';
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/OracleStatement.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/OracleStatement.g4
index 09ddff1..84e0cfa 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/OracleStatement.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/org/apache/shardingsphere/sql/parser/autogen/OracleStatement.g4
@@ -43,6 +43,7 @@ execute
     | createRole
     | dropRole
     | alterRole
+    | setRole
     | call
     | merge
     ) SEMI_?
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/impl/OracleDCLStatementSQLVisitor.java
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/impl/OracleDCLStatementSQLVisitor.java
index b3aa1d2..bfde2e7 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/impl/OracleDCLStatementSQLVisitor.java
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/java/org/apache/shardingsphere/sql/parser/oracle/visitor/statement/impl/OracleDCLStatementSQLVisitor.java
@@ -30,6 +30,7 @@ import 
org.apache.shardingsphere.sql.parser.autogen.OracleStatementParser.DropUs
 import 
org.apache.shardingsphere.sql.parser.autogen.OracleStatementParser.GrantContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.OracleStatementParser.ObjectPrivilegeClauseContext;
 import 
org.apache.shardingsphere.sql.parser.autogen.OracleStatementParser.RevokeContext;
+import 
org.apache.shardingsphere.sql.parser.autogen.OracleStatementParser.SetRoleContext;
 import 
org.apache.shardingsphere.sql.parser.sql.common.segment.generic.table.SimpleTableSegment;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleAlterRoleStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleAlterUserStatement;
@@ -39,6 +40,7 @@ import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.Ora
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleDropUserStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleGrantStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleRevokeStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl.OracleSetRoleStatement;
 
 import java.util.Collection;
 import java.util.Collections;
@@ -109,4 +111,9 @@ public final class OracleDCLStatementSQLVisitor extends 
OracleStatementSQLVisito
     public ASTNode visitDropRole(final DropRoleContext ctx) {
         return new OracleDropRoleStatement();
     }
+
+    @Override
+    public ASTNode visitSetRole(final SetRoleContext ctx) {
+        return new OracleSetRoleStatement();
+    }
 }
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/SetRoleStatement.java
similarity index 61%
copy from 
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
copy to 
shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/SetRoleStatement.java
index bba78cb..4d12b11 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/statement/dcl/SetRoleStatement.java
@@ -15,36 +15,12 @@
  * limitations under the License.
  */
 
-lexer grammar Literals;
+package org.apache.shardingsphere.sql.parser.sql.common.statement.dcl;
 
-import Alphabet, Symbol;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.AbstractSQLStatement;
 
-IDENTIFIER_
-    : [A-Za-z_$0-9]*?[A-Za-z_$]+?[A-Za-z_$0-9]*
-    |  DQ_ ~'"'+ DQ_
-    ;
-
-STRING_ 
-    : (DQ_ ( '\\'. | '""' | ~('"'| '\\') )* DQ_)
-    | (SQ_ ('\\'. | '\'\'' | ~('\'' | '\\'))* SQ_)
-    ;
-
-NUMBER_
-    : INT_? DOT_? INT_ (E (PLUS_ | MINUS_)? INT_)?
-    ;
-
-HEX_DIGIT_
-    : '0x' HEX_+ | 'X' SQ_ HEX_+ SQ_
-    ;
-
-BIT_NUM_
-    : '0b' ('0' | '1')+ | B SQ_ ('0' | '1')+ SQ_
-    ;
-
-fragment INT_
-    : [0-9]+
-    ;
-
-fragment HEX_
-    : [0-9a-fA-F]
-    ;
+/**
+ * Set role statement.
+ */
+public abstract class SetRoleStatement extends AbstractSQLStatement implements 
DCLStatement {
+}
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/dcl/OracleSetRoleStatement.java
similarity index 61%
copy from 
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
copy to 
shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/dcl/OracleSetRoleStatement.java
index bba78cb..09f3605 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/Literals.g4
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/dialect/statement/oracle/dcl/OracleSetRoleStatement.java
@@ -15,36 +15,15 @@
  * limitations under the License.
  */
 
-lexer grammar Literals;
+package org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.dcl;
 
-import Alphabet, Symbol;
+import lombok.ToString;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.SetRoleStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.oracle.OracleStatement;
 
-IDENTIFIER_
-    : [A-Za-z_$0-9]*?[A-Za-z_$]+?[A-Za-z_$0-9]*
-    |  DQ_ ~'"'+ DQ_
-    ;
-
-STRING_ 
-    : (DQ_ ( '\\'. | '""' | ~('"'| '\\') )* DQ_)
-    | (SQ_ ('\\'. | '\'\'' | ~('\'' | '\\'))* SQ_)
-    ;
-
-NUMBER_
-    : INT_? DOT_? INT_ (E (PLUS_ | MINUS_)? INT_)?
-    ;
-
-HEX_DIGIT_
-    : '0x' HEX_+ | 'X' SQ_ HEX_+ SQ_
-    ;
-
-BIT_NUM_
-    : '0b' ('0' | '1')+ | B SQ_ ('0' | '1')+ SQ_
-    ;
-
-fragment INT_
-    : [0-9]+
-    ;
-
-fragment HEX_
-    : [0-9a-fA-F]
-    ;
+/**
+ * Oracle set role statement.
+ */
+@ToString
+public final class OracleSetRoleStatement extends SetRoleStatement implements 
OracleStatement {
+}
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/DCLStatementAssert.java
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/DCLStatementAssert.java
index 2774445..6d6d1b0 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/DCLStatementAssert.java
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/DCLStatementAssert.java
@@ -28,10 +28,10 @@ import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.DropRoleSta
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.DropUserStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.GrantStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.RevokeStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.SetRoleStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dcl.MySQLRenameUserStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dcl.MySQLSetDefaultRoleStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dcl.MySQLSetPasswordStatement;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dcl.MySQLSetRoleStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.dcl.SQLServerAlterLoginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.dcl.SQLServerCreateLoginStatement;
 import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.sqlserver.dcl.SQLServerDenyUserStatement;
@@ -111,8 +111,8 @@ public final class DCLStatementAssert {
             AlterRoleStatementAssert.assertIs(assertContext, 
(AlterRoleStatement) actual, (AlterRoleStatementTestCase) expected);
         } else if (actual instanceof DropRoleStatement) {
             DropRoleStatementAssert.assertIs(assertContext, 
(DropRoleStatement) actual, (DropRoleStatementTestCase) expected);
-        } else if (actual instanceof MySQLSetRoleStatement) {
-            SetRoleStatementAssert.assertIs(assertContext, 
(MySQLSetRoleStatement) actual, (SetRoleStatementTestCase) expected);
+        } else if (actual instanceof SetRoleStatement) {
+            SetRoleStatementAssert.assertIs(assertContext, (SetRoleStatement) 
actual, (SetRoleStatementTestCase) expected);
         } else if (actual instanceof MySQLSetDefaultRoleStatement) {
             SetDefaultRoleStatementAssert.assertIs(assertContext, 
(MySQLSetDefaultRoleStatement) actual, (SetDefaultRoleStatementTestCase) 
expected);
         } else if (actual instanceof MySQLSetPasswordStatement) {
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/impl/SetRoleStatementAssert.java
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/impl/SetRoleStatementAssert.java
index 9e0860f..4a6dc83 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/impl/SetRoleStatementAssert.java
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/asserts/statement/dcl/impl/SetRoleStatementAssert.java
@@ -19,7 +19,7 @@ package 
org.apache.shardingsphere.test.sql.parser.parameterized.asserts.statemen
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import 
org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dcl.MySQLSetRoleStatement;
+import 
org.apache.shardingsphere.sql.parser.sql.common.statement.dcl.SetRoleStatement;
 import 
org.apache.shardingsphere.test.sql.parser.parameterized.asserts.SQLCaseAssertContext;
 import 
org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dcl.SetRoleStatementTestCase;
 
@@ -36,6 +36,6 @@ public final class SetRoleStatementAssert {
      * @param actual actual set role statement
      * @param expected expected set role statement test case
      */
-    public static void assertIs(final SQLCaseAssertContext assertContext, 
final MySQLSetRoleStatement actual, final SetRoleStatementTestCase expected) {
+    public static void assertIs(final SQLCaseAssertContext assertContext, 
final SetRoleStatement actual, final SetRoleStatementTestCase expected) {
     }
 }
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/case/dcl/set-role.xml
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/case/dcl/set-role.xml
index 7078f1e..efc16f4 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/case/dcl/set-role.xml
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/case/dcl/set-role.xml
@@ -19,7 +19,9 @@
 <sql-parser-test-cases>
     <set-role sql-case-id="set_role_default" />
     <set-role sql-case-id="set_role" />
+    <set-role sql-case-id="set_role_identified_by_password" />
     <set-role sql-case-id="set_roles" />
+    <set-role sql-case-id="set_roles_identified_by_passwords" />
     <set-role sql-case-id="set_none_role" />
     <set-role sql-case-id="set_all_role" />
     <set-role sql-case-id="set_all_expect_role" />
diff --git 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/sql/supported/dcl/set-role.xml
 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/sql/supported/dcl/set-role.xml
index 5539dc5..797b889 100644
--- 
a/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/sql/supported/dcl/set-role.xml
+++ 
b/shardingsphere-sql-parser/shardingsphere-sql-parser-test/src/main/resources/sql/supported/dcl/set-role.xml
@@ -18,10 +18,12 @@
 
 <sql-cases>
     <sql-case id="set_role_default" value="SET ROLE DEFAULT" db-types="MySQL" 
/>
-    <sql-case id="set_role" value="SET ROLE role1" db-types="MySQL" />
-    <sql-case id="set_roles" value="SET ROLE role1, role2" db-types="MySQL" />
-    <sql-case id="set_none_role" value="SET ROLE NONE" db-types="MySQL" />
-    <sql-case id="set_all_role" value="SET ROLE ALL" db-types="MySQL" />
-    <sql-case id="set_all_expect_role" value="SET ROLE ALL EXCEPT role1" 
db-types="MySQL" />
-    <sql-case id="set_all_expect_roles" value="SET ROLE ALL EXCEPT role1, 
role2" db-types="MySQL" />
+    <sql-case id="set_role" value="SET ROLE role1" db-types="MySQL,Oracle" />
+    <sql-case id="set_role_identified_by_password" value="SET ROLE role1 
IDENTIFIED BY password1" db-types="Oracle" />
+    <sql-case id="set_roles" value="SET ROLE role1, role2" 
db-types="MySQL,Oracle" />
+    <sql-case id="set_roles_identified_by_passwords" value="SET ROLE role1 
IDENTIFIED BY password1, role2 IDENTIFIED BY password2" db-types="Oracle" />
+    <sql-case id="set_none_role" value="SET ROLE NONE" db-types="MySQL,Oracle" 
/>
+    <sql-case id="set_all_role" value="SET ROLE ALL" db-types="MySQL,Oracle" />
+    <sql-case id="set_all_expect_role" value="SET ROLE ALL EXCEPT role1" 
db-types="MySQL,Oracle" />
+    <sql-case id="set_all_expect_roles" value="SET ROLE ALL EXCEPT role1, 
role2" db-types="MySQL,Oracle" />
 </sql-cases>

Reply via email to