Unverified Commit 8fa6543c authored by 张亮's avatar 张亮 Committed by GitHub
Browse files

Merge pull request #2215 from tristaZero/dev

Review the DCL Parsing rule for Oracle
parents a12f75d6 b20fb4c4
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -20,11 +20,11 @@ grammar DCLStatement;
import Symbol, Keyword, Literals, BaseRule;

grant
    : GRANT (proxyClause_ | privilegeClause_ | roleClause_) TO
    : GRANT (proxyClause_ | privilegeClause_ | roleClause_)
    ;

revoke
    : REVOKE (proxyClause_ | privilegeClause_ | allClause_ | roleClause_) FROM
    : REVOKE (proxyClause_ | privilegeClause_ | allClause_ | roleClause_)
    ;  

proxyClause_
+17 −4
Original line number Diff line number Diff line
@@ -20,11 +20,23 @@ grammar DCLStatement;
import Symbol, Keyword, Literals, BaseRule;

grant
    : GRANT (objectPrivileges_ (ON onObjectClause_)? | otherPrivileges_)
    : GRANT (objectPrivilegeClause_ | systemPrivilegeClause_ | roleClause_) 
    ;

revoke
    : REVOKE (objectPrivileges_ (ON onObjectClause_)? | otherPrivileges_)
    : REVOKE (objectPrivilegeClause_ | systemPrivilegeClause_ | roleClause_)
    ;

objectPrivilegeClause_
    : objectPrivileges_ ON onObjectClause_
    ;

systemPrivilegeClause_
    : systemPrivilege_
    ;
    
roleClause_
    : ignoredIdentifiers_
    ;

objectPrivileges_
@@ -61,8 +73,9 @@ onObjectClause_
    | tableName
    ;

otherPrivileges_
    : STRING_+ | IDENTIFIER_+
systemPrivilege_
    : ALL PRIVILEGES
    | ignoredIdentifiers_
    ;

createUser