[ https://issues.apache.org/jira/browse/COMDEV-385?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Juan Pan updated COMDEV-385: ---------------------------- Description: ### Apache ShardingSphere Apache ShardingSphere is a distributed database middleware ecosystem, including 2 independent products, ShardingSphere JDBC and ShardingSphere Proxy presently. They all provide functions of data sharding, distributed transaction, and database orchestration. Page: https://shardingsphere.apache.org Github: https://github.com/apache/shardingsphere ### Background ShardingSphere parser engine helps users parse a SQL to get the AST (Abstract Syntax Tree) and visit this tree to get SQLStatement (Java Object). At present, this parser engine can handle SQLs for `MySQL`, `PostgreSQL`, `SQLServer` and `Oracle`, which means we have to understand different database dialect SQLs. More details: https://shardingsphere.apache.org/document/current/en/features/sharding/principle/parse/ ### Task This issue is to proofread the DML(SELECT/UPDATE/DELETE/INSERT) SQL definitions for Oracle. As we have a basic [Oracle SQL syntax definitions](https://github.com/apache/shardingsphere/tree/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle) but do not keep in line with [Oracle DOC](https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-CE009C87-4AA6-45BF-9A0D-2B2C5FFB47B3), we need you to find out the vague SQL grammar definitions and correct them referring to Oracle DOC. Notice, when you review these DML(SELECT/UPDATE/DELETE/INSERT) SQLs, you will find that these definitions will involve some basic elements of Oracle SQL. No doubt, these elements are included in this task as well. ### Relevant Skills 1.Master JAVA language 2.Have a basic understanding of Antlr g4 file 3.Be familiar with Oracle SQLs ### Targets files 1.DML SQLs g4 file: https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DMLStatement.g4 2.Basic elements g4 file: https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4 ### References 1.Oracle SQL quick reference: https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-1FA35EAD-AED2-4619-BFEE-348FF05D1F4A 2. Detailed Oracle SQL info: https://docs.oracle.com/pls/topic/lookup?ctx=en/database/oracle/oracle-database/19/sqlqr&id=SQLRF008 ### Mentor Juan Pan, PMC of Apache ShardingSphere, panj...@apache.org > Apache ShardingSphere: Proofread the SQL definitions for ShardingSphere Parser > ------------------------------------------------------------------------------ > > Key: COMDEV-385 > URL: https://issues.apache.org/jira/browse/COMDEV-385 > Project: Community Development > Issue Type: Improvement > Components: GSoC/Mentoring ideas > Reporter: Juan Pan > Priority: Major > Labels: Mentor, gsoc2021 > > ### Apache ShardingSphere > Apache ShardingSphere is a distributed database middleware ecosystem, > including 2 independent products, ShardingSphere JDBC and ShardingSphere > Proxy presently. They all provide functions of data sharding, distributed > transaction, and database orchestration. > Page: https://shardingsphere.apache.org > Github: https://github.com/apache/shardingsphere > ### Background > ShardingSphere parser engine helps users parse a SQL to get the AST (Abstract > Syntax Tree) and visit this tree to get SQLStatement (Java Object). At > present, this parser engine can handle SQLs for `MySQL`, `PostgreSQL`, > `SQLServer` and `Oracle`, which means we have to understand different > database dialect SQLs. > More details: > https://shardingsphere.apache.org/document/current/en/features/sharding/principle/parse/ > ### Task > This issue is to proofread the DML(SELECT/UPDATE/DELETE/INSERT) SQL > definitions for Oracle. As we have a basic [Oracle SQL syntax > definitions](https://github.com/apache/shardingsphere/tree/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle) > but do not keep in line with [Oracle > DOC](https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-CE009C87-4AA6-45BF-9A0D-2B2C5FFB47B3), > we need you to find out the vague SQL grammar definitions and correct them > referring to Oracle DOC. > Notice, when you review these DML(SELECT/UPDATE/DELETE/INSERT) SQLs, you > will find that these definitions will involve some basic elements of Oracle > SQL. No doubt, these elements are included in this task as well. > ### Relevant Skills > 1.Master JAVA language > 2.Have a basic understanding of Antlr g4 file > 3.Be familiar with Oracle SQLs > ### Targets files > 1.DML SQLs g4 file: > https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DMLStatement.g4 > 2.Basic elements g4 file: > https://github.com/apache/shardingsphere/blob/master/shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/BaseRule.g4 > ### References > 1.Oracle SQL quick reference: > https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlqr/SQL-Statements.html#GUID-1FA35EAD-AED2-4619-BFEE-348FF05D1F4A > 2. Detailed Oracle SQL info: > https://docs.oracle.com/pls/topic/lookup?ctx=en/database/oracle/oracle-database/19/sqlqr&id=SQLRF008 > ### Mentor > Juan Pan, PMC of Apache ShardingSphere, panj...@apache.org -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@community.apache.org For additional commands, e-mail: dev-h...@community.apache.org